_ltoa() — long 型整数からストリングへの変換

フォーマット

#include <stdlib.h>
char *_ltoa(long value, char *string, int radix);
注: _ltoa 関数は C++ のみがサポート対象となっており、C はサポート対象外です。

言語レベル

Extension

スレッド・セーフ

はい

説明

_ltoa は、指定された long 型整数 value の数字をヌル文字で終わる文字ストリングに変換し、その結果を string に保管します。 radix 引数は、value の基数を指定します。2 から 36 の範囲でなければなりません。radix が 10 と等しく、value が負の場合、保管されているストリングの先頭文字は負符号 (-) です。

注: string 用に割り振られたスペースは、戻されるストリングを保持するために十分な大きさでなければなりません。この関数は、ヌル文字 (\0) を含めて最大 33 バイトまで戻すことができます。

戻り値

_ltoa はポインターを string に戻します。 エラーの戻り値はありません。

string 引数が NULL、または radix が 2 から 36 の範囲外にある場合、errno は EINVAL に設定されます。

この例では、整数値 -255L を 10 進数、バイナリー、および 16 進数値に変換し、その文字表現を配列 buffer に保管します。
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
   char buffer[35];
   char *p;
   p = _ltoa(-255L, buffer, 10);
   printf("The result of _ltoa(-255) with radix of 10 is %s\n", p);
   p = _itoa(-255L, buffer, 2);
   printf("The result of _ltoa(-255) with radix of 2\n    is %s\n", p);
   p = _itoa(-255L, buffer, 16);
   printf("The result of _ltoa(-255) with radix of 16 is %s\n", p);
   return 0;
}
The output should be:
      The result of _ltoa(-255) with radix of 10 is -255
      The result of _ltoa(-255) with radix of 2
          is 11111111111111111111111100000001
      The result of _ltoa(-255) with radix of 16 is ffffff01