C语言实现大小写转换的三种方法 |
您所在的位置:网站首页 › 大小写字母转换的c语言程序是什么 › C语言实现大小写转换的三种方法 |
今天心血来潮,总结了下大小写转换的方法,大致有三种。
1.使用C语言提供的函数:toupper(),tolower() 使用这两个函数需要引入头文件:#include 示例代码: #include #include #include void main( ) { char a = 'a'; char b = toupper( a ); printf( "%c\n", b); b = tolower( b ); printf( "%c\n", b); }
2.自己编写转换函数:
因为大小写之间的ASCII码值的差值是固定的,因此可以使用‘a’-‘A’来获取差值。
实例代码: #include #include char upChar( char ch ) { return ( char )( ch - ( 'a' - 'A' ) ); }; char downChar( char ch ) { return ( char )( ch + ( 'a' - 'A' ) ); }; void main( ) { char a = 'a'; char b = upChar( a ); printf( "%c\n", b); b = downChar( b ); printf( "%c\n", b); }
3.异或0x20来实现转换: 0x20是16进制,表示为2进制是00100000,这样可能还是不明显,转换为10进制,其实就是32
对了,还是利用32.
异或:相同为0,不同为1. 也就是说,任何数字与0异或都是它本身。
所以将其他位都设为0,把第6位(从左向右)设置为1,也就是0x20
如果第6位是1,则异或结果为0. 如果第6位是0,则异或结果为1.
实现了加减32的操作。
示例代码: #include #include char trans( char ch ) { ch = ch ^ 0x20; return ch; }; void main( ) { char a = 'a'; char b = trans( a ); printf( "%c\n", b); b = trans( b ); printf( "%c\n", b); }
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |