=' a' && c< ='z' )"不可移植?-6ren"> =' a' && c< ='z' )"不可移植?-有人告诉我字符比较 if(c>='a' && c='a' && c='a' && c=' a' && c< ='z' )"不可移植?,我们在Stack Overflow上找到一个类似的问题: http-6ren">
gpt4 book ai didi

c - 为什么 char comparison "if(c>=' a' && c< ='z' )"不可移植?

转载 作者:行者123 更新时间:2023-12-05 01:12:24 29 4
gpt4 key购买 nike

有人告诉我字符比较 if(c>='a' && c<='z')不便携。

例子

int main() {
char c;
scanf("%c", &c);
if(c>='a' && c<='z')
printf("lower case\n");
}

char比较if(c>='a' && c<='z')的任何证明不便携?

最佳答案

C 标准不保证'a' 之间只出现小写字母和 'z'在执行字符集中。

在EBCDIC编码中,'a'之间还有其他字符和 'z' ,并且一些 C 实现使用 EBCDIC。

C 标准确实保证数字是连续的,所以 '0' <= d && d <= '9'是否测试 d是十进制数字字符。

关于c - 为什么 char comparison "if(c>=' a' && c< ='z' )"不可移植?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16400009/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com