#牛客在线求职答疑中心#c语言中为什么char s[5]={"ABCDE"}; 和char[5]={'A','B','C','D','E'};和char*s; scsanf("%S",s);
这三个不能用puts(s);输出?
这三个不能用puts(s);输出?
全部评论
这是因为在C语言中,puts()函数只能用于输出以'\0'结尾的字符串。
在第一个例子中,char s[5] = "ABCDE";,字符串"ABCDE"在初始化时并没有以'\0'结尾,因此puts(s)会输出乱码。
在第二个例子中,char s[5] = {'A', 'B', 'C', 'D', 'E'};,这个字符串也没有以'\0'结尾,因此puts(s)也会输出乱码。
在第三个例子中,char* s; scanf("%s", s);,这里并没有对s进行初始化,s是一个野指针,puts(s)可能会导致程序崩溃。
如果你想使用puts()函数输出字符串,你需要确保字符串以'\0'结尾。例如:
char s[6] = "ABCDE";
puts(s);
这样puts()函数就能正确输出字符串"ABCDE"了。
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
01-02 17:26
辽宁对外经贸学院 产品运营
合适才能收到offe...:项目岗是什么岗?我看你有段好像跟策划运营相关,如果找运营的话第三段经历写详细点儿。
个人建议是把自我评价删了换成专业技能放在工作经验上或者下面。学生会那个也可以删,把第一个包装成店铺运营,写4-6给点。第三个也是写4-6个点。注意工作内容➕部分数据。
投递的时候BOS招呼用语改一下,换成我有xx工作经验,熟练掌握xx技能样式,也可以简历截图然后直接发送。 点赞 评论 收藏
分享
点赞 评论 收藏
分享