共用方式為


to 函式

任何 to 函式及其關聯的巨集中,如果有的話,轉換單一字元至另一個字元。

__toascii

toupper, _toupper, towupper

tolower、_tolower、towlower

 

備註

to 函式和巨集轉換如下。

常式

巨集

說明

__toascii

__toascii

將 c 轉換成 ASCII 字元

tolower

tolower

將 c 轉換為小寫,如果適當

_tolower

_tolower

將 c 轉換為小寫

towlower

將 c 轉換為對應的寬字元小寫字母

toupper

toupper

將 c 轉換為大寫,如果適當

_toupper

_toupper

將 c 轉換成大寫

towupper

轉換 c 為對應的寬字元大寫字母。

若要使用也定義為巨集的 to 常式的函式版本,以 #undef 指示詞移除巨集定義或不要包含 CTYPE.H。 如果您使用 /Za 編譯器選項,編譯器會使用 touppertolower函式版本。 touppertolower 函式的宣告於 STDLIB.H。

__toascii 常式設定所有,除了低位 7 位元 c 為 0,因此,轉換的值表示 ASCII 字元集的字元。 如果 c 已經表示 ASCII 字元, c 不會變更。

tolowertoupper 常式:

  • 根據目前地區設定的 LC_CTYPE 分類 (tolower 呼叫 isupper ,而 toupper 呼叫 islower)。

  • 如果 c 在目前地區設定代表適當大小寫而在該地區存在相反情況,請轉換 c 。 否則, c 不會變更。

_tolower_toupper 常式:

  • tolower 以及toupper 的更快速的版本是與地區設定無關的。

  • 只有在 isascii(c)isupper(c)islower(c) 分別為非零值時可以使用。

  • 如果 c 不是能適當轉換的 ASCII 字母,會導致未定義的結果。

towlowertowupper 函式會傳回 c 的已轉換拷貝,若且唯若以下兩個情況為非零值。 否則, c 不會變更。

  • c 是適當大小寫的寬字元 (也就是 iswupperiswlower, 分別為非零值)。

  • 具有對應目標大小寫的寬字元 (也就是 iswloweriswupper, 分別為非零值)。

範例

// 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 );
   }
}
  

請參閱

參考

資料轉換

地區設定

is、isw 常式