鱼C论坛

 找回密码
 立即注册
查看: 3579|回复: 6

字符串数数问题

[复制链接]
发表于 2013-2-28 09:12:21 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. #include "stdio.h"
  2. main()
  3. { int i;
  4. char * s="a\045+045\'b";
  5. for ( i=0;s++;i++);
  6. printf("%d",i);}
复制代码


求i的值, 程序意思应该是求字符串里有多少个字符。。数一数应该是8.。但是tc运行结果-404.。。看不懂了
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2013-2-28 09:20:00 | 显示全部楼层
:L我悟了。。有人告诉我*s++。。。。。
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2013-2-28 09:22:03 | 显示全部楼层
:L但是有没大神教教咋会这样的捏。。
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-2-28 09:26:07 | 显示全部楼层

\045
表示一个字符,这个字符的ascii码用8进制表示是45,用10进制表示是4*8+5*1=37
其它自己看
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2013-2-28 09:27:50 | 显示全部楼层
。。我知道是8啊。。。我是说为啥*s++,运行是8.。。。。s++,答案是-404
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-2-28 12:47:33 | 显示全部楼层
s++是地址++,*s++是地址++取值(输出一下s的地址不就明白了)
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2013-2-28 13:03:46 | 显示全部楼层
小马过河 发表于 2013-2-28 12:47
s++是地址++,*s++是地址++取值(输出一下s的地址不就明白了)

我知道啊。但是这个只是起到判断作用。。。怎么就影响到i的值了
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-8-8 00:33

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表