char 是有符号的 unsigned char 是无符号的,里面全是正数
1.两者都作为字符用的话是没有区别的, 2.但当整数用时有区别: char 整数范围为-128到127( 0x80__0x7F), 而unsigned char 整数范围为0到255( 0__0xFF ) 例如:如下分支语句的条件是永远不会成立的。把char改为unsigned char即可 错误的分支语句: if((char)*lp>0x80) { wsprintf(szBuf,"%c%c\0",*lp); } else { wsprintf(szBuf,"%c\0",*lp); } 正确的分支语句: if((unsigned char)*lp>0x80) { wsprintf(szBuf,"%c%c\0",*lp); } else { wsprintf(szBuf,"%c\0",*lp); } |
字符型数据(char)与无符号字符型数据的区别(unsigned char)
最新推荐文章于 2024-04-18 17:53:14 发布