c语言常见笔试题及答案(20).docx
《c语言常见笔试题及答案(20).docx》由会员分享,可在线阅读,更多相关《c语言常见笔试题及答案(20).docx(3页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 c语言常见笔试题及答案(20) c语言常见笔试题及答案 上述三个有什么区分? char * const p; /常量指针,p的值不行以修改 char const * p;/指向常量的指针,指向的常量值不行以改 const char *p; /和char const *p char str1 = abc; char str2 = abc; const char str3 = abc; const char str4 = abc; const char *str5 = abc; const char *str6 = abc; char *str7 = abc; char *str8 = abc;
2、 cout ( str1 = str2 ) endl; cout ( str3 = str4 ) endl; cout ( str5 = str6 ) endl; cout ( str7 = str8 ) endl; 结果是:0 0 1 1 解答:str1,str2,str3,str4是数组变量,它们有各自的内存空间; 而str5,str6,str7,str8是指针,它们指向一样的常量区域。 12. 以下代码中的两个sizeof用法有问题吗?C易 void UpperCase( char str ) / 将 str 中的小写字母转换成大写字母 for( size_t i=0; i if( ”a”=stri stri=”z” ) stri -= (”a”-”A” ); char str = aBcDe; cout str字符长度为: sizeof(str)/sizeof(str0) endl; UpperCase( str ); cout str endl; 答:函数内的sizeof有问题。依据语法,sizeof如用于数组,只能测出静态数组的大小,无法检测动态安排的或外部数组大小。函数外的str是一个静态定义的数组,因此其大小为6,函数内的str实际只是一个指向字符串的指针,没有任何额外的与数组相关的信息,因此sizeof作用于上只将其当指针看,一个指针为4个字节,因此返回4。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 常见 笔试 答案 20
限制150内