针对C语言功力测试题的讲解分析

文章作者 100test 发表时间 2007:03:10 17:22:26
来源 100Test.Com百考试题网


int x=35.
char str[10].

//问:strlen(str)和sizeof(str)的值分别是多少?
// strlen(str) 值不确定,strlen根据’\0’确定字符串是否结束。
// sizeof(str)=10 sizeof一个数组为数组长度

strcpy(str,"www.it315.org"/*共13个字母*/).

//问:此时x和strlen(str)的值分别是多少?
// x 为35
// strcpy(char* dest, const char* src)
// 根据src来复制dest,依照src的’\0’决定复制的长度,而dest必须要提供足够的长度,这里会引起溢出,strlen返回13,但是数组外部的数据已经被破坏

str="it315.org".//编译能通过吗?
// 数组不能赋值,只能初始化。char str[10] = "it315.org".
// 而且初始化时编译器会检查数组的长度与初始化串的长度是否匹配

char *pstr.
strcpy(pstr,"http://www.it315.org).
//上句编译能通过吗?运行时有问题吗?
// 可以通过编译,但是pstr指向了常量区,运行时最好只做读操作,写操作不保险



相关文章


江西06上半年[NCRE]考试12月30日报名截止
福建:2005年厦门市计算机与软件资格考试开始报名
综合指导:计算机二级笔试试题一
针对C语言功力测试题的讲解分析
黑龙江:2006年上半年英语等级及计算机等级考试时间
浅谈二级C语言笔试应试技巧
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛