C语言入门学习
一、 简答题。 ( 共14题 ,共0分,每题0分 )
1. int i=10, j=10, k=3; k*=i+j; k最后的值是?
答:k = 60
ok
2. 写出程序结果:
void Func(char str[100])
{
printf("%d\n", sizeof(str));
}
答:4或者8(如果操作系统为32位则为4,64位则为8)
是地址吗
3. 写出sizeof(struct name2)的结果
struct name2{
char str;
int num;
short x;
}
不会!看结构
答:此题考察结构对齐的知识,结果为12
4. 写出sizeof(struct name1) 的结果
struct name1{
char str;
short x;
int num;
}
不会!
答:同样考察的是结构对齐的知识,结果为8
5. A.c 和B.c两个c文件中使用了两个相同名字的static变量,编译的时候会不会有问题?这两个static变量会保存到哪里(栈还是堆或者其他的)?
答:没有问题,static变量只在当前文件中有效,也就是说static变量的作用域属于所在的文件域。
static变量保存在全局/静态区