打印
[技术问答]

数组的最后一位不是‘0’么,怎么会跑飞呢

[复制链接]
1479|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
niuyaliang|  楼主 | 2014-2-24 16:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void a(uint32_t *male)
{
    while( *male != '0')
        {
                printf(" %d\n",*male);
                male++;
        }
}
uint32_t TextString[4] = {0,1,2,3};
a(TextString);
执行这条函数的时候,跑飞了,莫非数组的最后一位不是‘0’?
沙发
niuyaliang|  楼主 | 2014-2-24 16:37 | 只看该作者
dwh000 发表于 2014-2-24 16:24
谁说的数组最后一位是零..
你说的是字符串吧.

印象中最后一位是0的,我得翻翻书去,字符串的最后一位肯定是0

使用特权

评论回复
板凳
niuyaliang|  楼主 | 2014-2-24 18:41 | 只看该作者
dwh000 发表于 2014-2-24 16:24
谁说的数组最后一位是零..
你说的是字符串吧.

字符的最后一位果然不是‘\0’,功夫还有待加强哇
/************
\0是C++中字符串的结尾标志,存储在字符串的结尾
'\0'的ASCII是0
**************/

使用特权

评论回复
地板
从小木丁丁| | 2014-2-25 12:23 | 只看该作者
咋可能是零

使用特权

评论回复
5
wqx0532| | 2014-2-26 11:01 | 只看该作者
是 '\0',

使用特权

评论回复
6
从小木丁丁| | 2014-2-26 15:52 | 只看该作者
是 '\0

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

212

主题

2427

帖子

7

粉丝