标题:请问此代码结果为何为 3??编译器在读取字符串时不是\0为结束标志吗?
只看楼主
刘燕媚prince
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2013-5-25
结帖率:88.24%
 问题点数:0 回复次数:10 
请问此代码结果为何为 3??编译器在读取字符串时不是\0为结束标志吗?
#include "stdio.h"
main()
{
    int  j;
    char *s="x\035\'";
    for(j=0; *s++; j++)
        ;
    printf("%d\n",j);
}
搜索更多相关主题的帖子: 字符串 编译器 include 标志 
2013-06-01 07:01
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
\ 代表转义符  此题结果不确定 此代码有问题

DO IT YOURSELF !
2013-06-01 07:13
刘燕媚prince
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2013-5-25
得分:0 
回复 2楼 wp231957
请问您觉得哪里出现问题??
2013-06-01 07:28
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
不知道  谁知道你想测试字符串 还是想测试转义符啊  弄不懂呢

DO IT YOURSELF !
2013-06-01 07:30
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
程序代码:
#include "stdio.h"
void main()
{
    int  j;
    char *s="x\\035\\'";
    for(j=0; s++,*s!='\0'; j++)
        printf("%s\n",s);
    printf("%d\n",j);
}
你不防测试一下这个 看看能运行出来点虾米

DO IT YOURSELF !
2013-06-01 07:36
刘燕媚prince
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2013-5-25
得分:0 
回复 4楼 wp231957
那么,如果我想测试的是字符串,我应该怎么改写?
如果我想测试的是转义符,我又应该怎么改写?
2013-06-01 07:38
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
以下是引用刘燕媚prince在2013-6-1 07:38:49的发言:

那么,如果我想测试的是字符串,我应该怎么改写?
如果我想测试的是转义符,我又应该怎么改写?
看5楼  这2个都测试了

DO IT YOURSELF !
2013-06-01 07:39
刘燕媚prince
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2013-5-25
得分:0 
回复 5楼 wp231957
不懂不懂耶!!!你的程序运行到\0怎么还输出啊???
2013-06-01 07:49
pauljames
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:千里冰封
威 望:9
帖 子:1555
专家分:10000
注 册:2011-5-8
得分:0 
你定义的字符串里面实际包含了4个字符,用16进制表示为
78,1d,27,0
分别是x,\035,\',以及自动添加的\0
当遇到0之前,循环执行,因此一共执行了3次循环,所以j就是3

经常不在线不能及时回复短消息,如有c/单片机/运动控制/数据采集等方面的项目难题可加qq1921826084。
2013-06-01 09:04
hsjjgm
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:106
专家分:189
注 册:2013-4-27
得分:0 
学习
2013-06-01 10:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-414163-1-1.html




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

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