CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C语言

关于string转换的问题

楼主avonuts()2006-10-02 18:34:57 在 C/C++ / C语言 提问

想把字符串中单位的数字和双位的数字加起来,gcc下面有Segmentation   Fault   (core   dumped)的提示,这个是啥问题阿?请教各位  
  高手帮忙看一下.  
   
   
  int   main()  
  {  
      char   barcode[]="123456789";  
      int   number=atoi(barcode)  
      int   oddsum=barcode[0]+barcode[2]+barcode[4]+barcode[6]+barcode[8];  
      int   evensum=barcode[1]+barcode[3]+barcode[5]+barcode[7];  
      printf("%s\n",oddsum);  
      printf("%s\n",evensum);  
      printf("%s\n",barcode);  
    }  
  问题点数:20、回复次数:4Top

1 楼lj860603(跑吧,键键)回复于 2006-10-02 18:45:42 得分 10

int   oddsum=barcode[0]+barcode[2]+barcode[4]+barcode[6]+barcode[8];  
  ==============》  
  int   oddsum=(barcode[0]   -   '0')+(barcode[2]-'0')+(barcode[4]-'0')+(barcode[6]-'0')+(barcode[8]-'0');  
   
  int   evensum=barcode[1]+barcode[3]+barcode[5]+barcode[7];  
  也一样改成上面的形式。Top

2 楼lj860603(跑吧,键键)回复于 2006-10-02 18:46:03 得分 0

printf("%s\n",oddsum);  
      printf("%s\n",evensum);  
      printf("%s\n",barcode);  
  ===============》  
  printf("%d\n",oddsum);  
      printf("%d\n",evensum);  
      printf("%s\n",barcode);  
  Top

3 楼Jokar(贪睡鼠)回复于 2006-10-02 18:49:15 得分 10

Segmentation   Fault的原因   是   int形态的变量却以   %s(字符串)的格式输出了;比如printf("%s\n",oddsum);   oddsum是int型的,却以%s的格式想让printf作输出~  
   
   
  改成   printf("%d\r\n",   oddsum);就可以了,不过这也得不到正确的结果,   因为oddsum所得的是数字字符的ascii码的和,这个和真正的数字的值相差了   48~呵呵  
   
  lz要做出相应的调整才行~Top

4 楼avonuts()回复于 2006-10-02 19:01:45 得分 0

To   Jokar(贪睡鼠★御姐控☆小宠王)    
  多谢,最后结果的确如此,能不能给我一些提示阿,比如格式的转换。  
   
  TO   lj860603(键键  
  thanx   very   much,   it   is   working   on   gcc   complier.Top

相关问题

关键词

得分解答快速导航

  • 帖主:avonuts
  • lj860603
  • Jokar

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo