分类: C/C++
2014-12-08 00:09:05
问:指针强转之后还会对齐吗?
答:不会
有图有真相:
问:fgets的细节是怎样的?
答:fgets的原型是这样的:char *fgets( char *string, int n, FILE *stream );fgets把回车也视为输入的字符。输入大于等于n-1个,就截取n-1个,最后补个’\0’结尾。如果输入少于n-1个,就在所有输入后加个’\0’结尾。因为回车的ASCII码的十六进制是0A,所以在内存中经常可以看到0A 00结尾的字符串。截取剩下的还在缓冲区里。所以当显示要输入n个字符时,实际上fgets里的第2个参数要设置成n+1,这样才不会少截取一个字符。
问:所有常量都没有地址吗?
答:只有字符型常量放在只读数据区,有地址。其他类型都是立即数,都没有地址。