1,data |(0x1<<6), data &~(0x1<<6) ,data ^(0x1<<6)
2, (1)5
(2)a=6,b=5,c=5,d=5,因为i<5,循环执行5次,传了5个字符。
3.
(1)tmpInfo1.height=1;
(2)tmpInfo1.baseInfo.with=2
(3)tmpInfo2.height=1
(4)tmpInfo2->baseInfo.with=2
(5)tmpInfo3->height=1
4. b=9
5.(1)
1,int *p=(int *)0x80000000;
2.*p=tmp;tmp=*p;
(2) char *q=(char*)&tmp;
for(i=0;i<4;i++) {buf[4+i]=q[i];}
(3).第二行改为:char *buf=(char*)malloc(count*sizeof(char) )
6.
(1)int seqn[tail]=data; tail++;
(2)data = int seqn[head];
(3)head == tail?1:0;
(4) (tail+1)%SEQLEN ==head?1:0;
(5)head=0;tail=0;
(6) (tail-head+n)%n;;
(7)可以存放strlen(seqn)-1个元素
7.(1)Rdy[i/8] = 0x01<<i%8
(2)Rdy[j/8] =Rdy[j/8] ^ 0x01<<j%8
(3)for(int i=0;i<8;i++)
{ for(int j=0;j<8;j++)
{if(Rdy[i]=0x01<<j){
printf("Rdy[%d] %d",i,j);
return ;
}}}
8.第一行有问题,这么写会导致data[i]数组无法被按位复制
改成:static int *data[100];
9.由于该递归Text中没有返回,那么会无限执行fun(),一直打印m的值15.
10.(1)传参的类型混乱,没有指针接应,会出现段错误。
(2)void GetMenory(char* *p) //line1
*p=(char*)malloc(10); //line2
GetMemory(&str); //line4