| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1358 人关注过本帖
标题:运行时会跳出程序已停止工作,求大佬
只看楼主 加入收藏
南城无风
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2018-7-3
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
运行时会跳出程序已停止工作,求大佬
char str2[20] = "12345";    //已指定长度 ,20
        char str3[] = "67890";        //未指定长度 ,6
        strcat(str2,str3);
        printf("%s\n", str2);        
        printf("%s\n", sizeof(str2));        //length = 25?26????????????????
搜索更多相关主题的帖子: 运行 跳出 停止 工作 printf 
2018-07-13 09:49
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:10 

既然定义的是 char str2[20],那么 sizeof(str2) 就是 20
sizeof(str2)的类型是size_t,你为什么用%s输出?按照C标准,应该用%zu输出
2018-07-13 10:03
zbjzbj
Rank: 12Rank: 12Rank: 12
来 自:郑州
等 级:贵宾
威 望:52
帖 子:633
专家分:3045
注 册:2011-4-22
收藏
得分:10 
#include "stdio.h"
 int main()
 {
 char str2[20] = "12345";    //已指定长度 ,20
        char str3[] = "67890";        //未指定长度 ,6
        strcat(str2,str3);
        printf("%s\n", str2);        
        printf("%d\n", sizeof(str2));
        printf("%d",strlen(str2));  
      
 }
2018-07-13 10:09
南城无风
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2018-7-3
收藏
得分:0 
回复 2楼 rjsp
不好意思,我果然是新手
2018-07-13 10:16
快速回复:运行时会跳出程序已停止工作,求大佬
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017312 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved