void getmemory(char *p) {p=(char *) malloc(100); strcpy(p,\"hello world\"); }
int main( ) {
char *str=NULL; getmemory(str); printf(\"%s/n\ free(str); return 0; }
19.char szstr[10];
strcpy(szstr,\"01234567\"); 产生什么结果?为什么?
20.列举几种进程的同步机制,并比较其优缺点。 21.进程之间通信的途径 22.进程死锁的原因 23.死锁的4个必要条件 24.死锁的处理
25. 操作系统中进程调度策略有哪几种? 26.类的静态成员和非静态成员有何区别? 27.纯虚函数如何定义?使用时应注意什么? 28.数组和链表的区别
29.ISO的七层模型是什么?tcp/udp是属于哪一层?tcp/udp有何优缺点?
30:(void *)ptr 和 (*(void**))ptr的结果是否相同?其中ptr为同一个指针 31:int main() { int x=3; printf(\"%d\ return 1;
}
问函数既然不会被其它函数调用,为什么要返回1? 32,要对绝对地址0x100000赋值,我们可以用 (unsigned int*)0x100000 = 1234;
那么要是想让程序跳转到绝对地址是0x100000去执行,应该怎么做? 33,已知一个数组table,用一个宏定义,求出数据的元素个数 34。线程与进程的区别和联系? 线程是否具有相同的堆栈? dll是否有的堆栈?
35。unsigned short A = 10; printf(\"~A = %u\\n\char c=128; printf(\"c=%d\\n\输出多少?并分析过程 (二)
1. -1,2,7,28,,126请问28和126中间那个数是什么?为什么? 2.用两个栈实现一个队列的功能?要求给出算法和思路!
3.在c语言库函数中将一个字符转换成整型的函数是atol()吗,这个函数的原型是什么?
4。对于一个频繁使用的短小函数,在C语言中应用什么实现,在C++中应用什么实现?
5。直接链接两个信令点的一组链路称作什么? 7。软件测试都有那些种类?
8。确定模块的功能和模块的接口是在软件设计的那个队段完成的? 9。enum string { x1, x2, x3=10, x4, x5, }x; 问x;
10。unsigned char *p1; unsigned long *p2;
p1=(unsigned char *)0x801000; p2=(unsigned long *)0x810000; 请问p1+5= ; p2+5= ; 选择题:
1.Ethternet链接到Internet用到以下那个协议? A.HDLC;B.ARP;C.UDP;D.TCP;E.ID 2.属于网络层协议的是: A.TCP;B.IP;C.ICMP;D.X.25 3.Windows消息调度机制是:
A.指令队列;B.指令堆栈;C.消息队列;D.消息堆栈; 四.找错题:
1.请问下面程序有什么错误? int a[60][250][1000],i,j,k; for(k=0;k<=1000;k++) for(j=0;j<250;j++) for(i=0;i<60;i++) a[i][j][k]=0;
2。以下是求一个数的平方的程序,请找出错误: #define SQUARE(a) ((a)*(a)) int a=5; int b; b=SQUARE(a++);
3。typedef unsigned char BYTE
int examply_fun(BYTE gt_len; BYTE *gt_code) {
BYTE *gt_buf;
gt_buf=(BYTE *)MALLOC(Max_GT_Length); ......
if(gt_len>Max_GT_Length) {
return GT_Length_ERROR; } ....... 问答题:
1.IP Phone的原理是什么?
2.TCP/IP通信建立的过程怎样,端口有什么作用? (三)
1、局部变量能否和全局变量重名?
2、如何引用一个已经定义过的全局变量?
3、全局变量可不可以定义在可被多个.C文件包含的头文件中?为什么?
4、语句for( ;1 ;)有什么问题?它是什么意思?
5、do……while和while……do有什么区别? 6、请写出下列代码的输出内容 #include main() {int a,b,c,d; a=10; b=a++; c=++a; d=10*a++;
printf(\"b,c,d:%d,%d,%d\",b,c,d); return 0; } 高级题
1、static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别? 2、程序的局部变量存在于()中,全局变量存在于()中,动态申请数据存在于( )中。 3、设有以下说明和定义:
typedef union {long i; int k[5]; char c;} DATE;
struct data { int cat; DATE cow; double dog;} too; DATE max;
则语句 printf(\"%d\的执行结果是:______
4、队列和栈有什么区别?
5、这道题目出错了,这里就不写上了。
6、已知一个单向链表的头,请写出删除其某一个结点的算法,要求,先找到此结点,然后删除。 7、请找出下面代码中的所以错误
说明:以下代码是把一个字符串倒序,如“abcd”倒序后变为“dcba” 1、#include\"string.h\" 2、main() 3、{
4、 char*src=\"hello,world\"; 5、 char* dest=NULL; 6、 int len=strlen(src); 7、 dest=(char*)malloc(len); 8、 char* d=dest; 9、 char* s=src[len]; 10、 while(len--!=0) 11、 d++=s--;
12、 printf(\"%s\13、 return 0; 14、}
一、判断题(对的写T,错的写F并说明原因,每小题4分,共20分) 1、有数组定义int a[2][2]={{1},{2,3}};则a[0][1]的值为0。( ) 2、int (*ptr) (),则ptr是一维数组的名字。( ) 3、指针在任何情况下都可进行>,<,>=,<=,==运算。( )
4、switch(c) 语句中c可以是int ,long,char ,float ,unsigned int 类型。( ) 二、填空题(共30分)
1、在windows下,写出运行结果,每空2分,共10分。 char str[ ]= "Hello"; char *p=str; int n=10;
sizeof(str)=( ) sizeof(p)=( ) sizeof(n)=( )
void func(char str[100]){ } sizeof(str)=( )
2、void getmemory(char **p, int num) { *p=(char *) malloc(num);} void test(void) { char *str=NULL; getmemory(&str,100); strcpy(str,"hello"); printf(str); }
运行test函数有什么结果?( )10分
3、设int arr[]={6,7,8,9,10}; int *ptr=arr; *(ptr++)+=123;
printf("%d,%d",*ptr,*(++ptr));
( ) 10分 二、编程题(第一小题20,第二小题30分)
1、 不使用库函数,编写函数int strcmp(char *source, char *dest) 相等返回0,不等返回-1;
2、 写一函数int fun(char *p)判断一字符串是否为回文,是返回1,
不是返回0,出错返回-1