to 函数
函数及其关联的宏中的每一,如果有,将单个字符转换为另一个字符。
|
备注
函数和宏转换如下所示。
实例 |
宏 |
说明 |
---|---|---|
__toascii |
__toascii |
转换 c 为 ASCII 字符 |
tolower |
tolower |
转换 c 为例,如果相应 |
_tolower |
_tolower |
转换 c 转换为小写 |
towlower |
无 |
c 转换为相应的宽字符小写字母 |
toupper |
toupper |
转换 c 转换为大写,如果相应 |
_toupper |
_toupper |
转换 c 转换为大写 |
towupper |
无 |
c 转换为相应的宽字符大写字母 |
若要使用还定义为宏,实例的功能版本中移除宏定义与 #undef 指令或不包括 CTYPE.H。 如果您使用 /Za 编译器选项,编译器使用 toupper 或 tolower的功能版本。 toupper 和 tolower 功能的说明。 STDLIB.H。
__toascii 实例设置所有,但低序 7 位 c 为 0,因此,该转换的值表示 ASCII 字符集中的一个字符。 如果 c 已显示 ASCII 字符, c 保持不变。
tolower 和 toupper 实例:
取决于当前区域设置的 LC_CTYPE 类别 (tolower 调用 isupper ,并 toupper 调用 islower)。
将 c ,如果 c 在当前区域设置表示相应的用例的一个转换字母,并相反的情况下为该区域设置存在。 否则, c 保持不变。
_tolower 和 _toupper 实例:
是 tolower 的区域设置无关,更快的版本和 toupper。
,仅当 (isasciic**)** 和 (isupperc**)** 或 (islowerc,),分别为非零时,可以使用。
,如果 c 不合适用例的 ASCII 字母转换的,未定义的结果。
towlower 和 towupper 函数返回 c 的一个转换的副本,则,因此,只有当两个条件皆为非零。 否则, c 保持不变。
c 适用于用例的宽字符 (即哪 iswupper 或 iswlower, ,分别为非零)。
具有目标用例中的相应宽字符 (即哪 iswlower 或 iswupper, ,分别为非零)。
示例
// crt_toupper.c
/* This program uses toupper and tolower to
* analyze all characters between 0x0 and 0x7F. It also
* applies _toupper and _tolower to any code in this
* range for which these functions make sense.
*/
#include <ctype.h>
#include <string.h>
char msg[] = "Some of THESE letters are Capitals.";
char *p;
int main( void )
{
printf( "%s\n", msg );
/* Reverse case of message. */
for( p = msg; p < msg + strlen( msg ); p++ )
{
if( islower( *p ) )
putchar( _toupper( *p ) );
else if( isupper( *p ) )
putchar( _tolower( *p ) );
else
putchar( *p );
}
}