66问答网
所有问题
C++下面程序段的运行结果是 char * p = “abcdefgh”; p +=3; cout<< strlen(strcpy(p,”ABCD”))
如题所述
举报该问题
推荐答案 2013-01-04
运行结果是直接崩溃 strcpy(p,”ABCD”) 这句话有一个很隐蔽的问题 p现在指向了静态数据区 strcpy 是数据拷贝 而你往静态数据区写数据是犯了大忌的!!!
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://66.wendadaohang.com/zd/sUpDv9Dn2.html
其他回答
第1个回答 2013-01-04
char * p = “abcdefgh”;
p +=3; p = “defgh”; 字符串还是“abcdefgh”;
strcpy(p,”ABCD”)
p = “ABCD”;
strlen(strcpy(p,”ABCD”))=4
cout<< strlen(strcpy(p,”ABCD”))
输出4
追问
答案是:出错。。。???
追答
后面没加分号;你没有写全文,别人自然不关心你的个别疏漏。
本回答被网友采纳
第2个回答 2013-01-04
如果没看错的话 结果=5
相似回答
大家正在搜
相关问题
c++关于字符串的题目,期望给出解析
char * q = p + strlen(p) -1; 在...
大家帮我看看这段C++程序,不明白为什么str=new ch...
c++ char *p=new char[5];int le...