a1296715528 发表于 2017-12-29 11:04:08

一个关于字符串的小问题

本帖最后由 a1296715528 于 2017-12-29 11:38 编辑

前几天做题发现个字符串"\0x7g"竟然合法,一瞅答案,是'\0x7'和'g'的组合。。。然后今天又看到一个字符串"\0x7a",我到底该怎么理解它?是'\0x7a'还是'\0x7''a'?好困惑T^T   

还有就是"\007"也能理解为'\007'或者'\0'和'07'吗?
〒_〒.{:10_266:}{:10_266:}

BngThea 发表于 2017-12-29 11:08:54

"\07a" 是 '\07' 和'a'

a1296715528 发表于 2017-12-29 11:13:14

BngThea 发表于 2017-12-29 11:08
"\07a" 是 '\07' 和'a'

只能这么理解吗??{:10_266:}但是我感觉第二种也好有道理

BngThea 发表于 2017-12-29 11:16:18

a1296715528 发表于 2017-12-29 11:13
只能这么理解吗??但是我感觉第二种也好有道理

道理何在?

a1296715528 发表于 2017-12-29 11:19:40

BngThea 发表于 2017-12-29 11:16
道理何在?

帖子开头不就引入了第二种解释吗?很OK呀{:10_269:}

BngThea 发表于 2017-12-29 11:21:49

a1296715528 发表于 2017-12-29 11:19
帖子开头不就引入了第二种解释吗?很OK呀

开头不就是我写的方式吗?

a1296715528 发表于 2017-12-29 11:37:24

BngThea 发表于 2017-12-29 11:21
开头不就是我写的方式吗?

"\0x7g"那个   我去!好像少些了个x

a1296715528 发表于 2017-12-29 11:39:02

BngThea 发表于 2017-12-29 11:21
开头不就是我写的方式吗?

好了现在我改了   再看看吧dalao{:10_266:}

人造人 发表于 2017-12-29 13:03:03

#include <stdio.h>

int main(void)
{
        char string[] = "\0x7g";

        for(int i = 0; i < sizeof(string); i++)
        {
                printf("0x%.2x\n", string);
        }

        return 0;
}


0x00
0x78
0x37
0x67
0x00
请按任意键继续. . .

a1296715528 发表于 2017-12-29 13:59:51

人造人 发表于 2017-12-29 13:03


仿佛懂了   谢谢
页: [1]
查看完整版本: 一个关于字符串的小问题