C语言题疑问,下题答案为什么是B和C?
若有以下说明,则对strcpy库函数的调用不正确的有_______。char*str1=“copy”,str2[10],*str3=“abcde”,*str4,*str5...
若有以下说明,则对strcpy库函数的调用不正确的有_______。
char *str1=“copy”,str2[10],*str3=“abcde”,*str4,*str5=“hijk”;
A)strcpy(str2,str1); B)strcpy(str3,str1);
C)strcpy(str4,str1); D)strcpy(str5 ,str1);
多选,答案是BC, 展开
char *str1=“copy”,str2[10],*str3=“abcde”,*str4,*str5=“hijk”;
A)strcpy(str2,str1); B)strcpy(str3,str1);
C)strcpy(str4,str1); D)strcpy(str5 ,str1);
多选,答案是BC, 展开
5个回答
展开全部
c肯定不可以;因为题目中只定义了str4为指向字符型数据的指针变量,而没有向它赋值,在程序中如果指针变量没有明确指出指向的时候,是不能够向他所指向的单元赋值的,因为此时的指针可能指向内存中很重要的数据区,如果强制赋值的话,可能还会导致计算机崩溃。B项我实在看不出来错在哪里
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
答案是BCD
str3指向的是一个常量地址,不能修改它
str4没有分配内存,不能修改它
str5跟str3一样
除非str5[] = "hijk",而且要比str1长,否则出错,如str5[] = "hijkdddd"
str3指向的是一个常量地址,不能修改它
str4没有分配内存,不能修改它
str5跟str3一样
除非str5[] = "hijk",而且要比str1长,否则出错,如str5[] = "hijkdddd"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
strcopy的作用是将str1复制给str2.
但是,它有一个前提,就是,2的长度必须比1长。不然,就会溢出,得不到答案或者错误的提示。
C中,就范了这样的错误。
但是,我看B 是对的呀。O(∩_∩)O~
但是,它有一个前提,就是,2的长度必须比1长。不然,就会溢出,得不到答案或者错误的提示。
C中,就范了这样的错误。
但是,我看B 是对的呀。O(∩_∩)O~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
str1 str3 str5 都是指向常量的指针
常量值不可以改变,如果进行strcpy会出现错误
常量值不可以改变,如果进行strcpy会出现错误
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询