您的位置:首页 > 职场人生

笔面试经典题目

2013-09-04 15:39 225 查看
 

#include <stdio.h>
int main() {

int a[2][4] = {{1, 2, 4, 8},{ 16, 32, 64, 128}};
int (*p)[4] = a;
printf("%d\n", *(a[1]+0));
printf("%d\n", *(*(&a[1])+0));
printf("%d\n", *(*(p+1)+0));//(p+1)为&a[1]
return 0;
}
#include <stdio.h>
#include <stdlib.h>
void x (int* arg) {
*arg=1;
}
int main() {

int *p=(int *)malloc(sizeof(int));
x(p);
printf("%d",*p);
}
#include <stdio.h>
#include <stdlib.h>
void x (int* arg) {
arg=(int *)malloc(sizeof(int));
*arg=1;
}
int main() {

int *p=NULL;
x(p);
printf("%d",*p);//段错误
}
/*输出为8个-,为什么不是6个呢。。。*/
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
int main(void)
{
int i;
for(i=0; i<2; i++)
{
fork();    //fork()后子进程将printf缓存复制但只有第二层fork()时才发生缓存复制
printf("-");
}
return 0;
}


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: