標準/拡張機能 | C/C++ | 依存項目 |
---|---|---|
z/OS® UNIX | 両方 | z/OS V1R5 |
#define _OPEN_SYS_ITOA_EXT
#include <stdlib.h>
char * lltoa(int64_t ll, char * buffer, int radix);
(void) sprintf(buffer, "%lld", ll);
「buffer」は、戻り文字ストリングを示します。基数が OCTAL の場合、lltoa()
は int64_t ll を符号なし 8 進定数にフォーマット設定します。
基数が HEX の場合、lltoa() は int64_t ll を符号なし 16 進定数にフォーマッ
ト設定します。
16 進値は、必要に応じて、小文字の abcdef を含みます。ストリング・ポインター (バッファーと同じ) が戻されます。 無効な基数引数が渡されると、関数は NULL を戻し、errno に EINVAL を設定しま す。
/* CELEBL30
This example reads an int64_t and formats it to decimal, unsigned
octal, unsigned hexadecimal constants converted to a character
string.
*/
#define _OPEN_SYS_ITOA_EXT
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int64_t i;
char buffer [sizeof(int64_t)*8+1];
printf ("Enter a number: ");
if (scanf ("%lld",&i) == 1) {
lltoa (i,buffer,DECIMAL);
printf ("decimal: %s¥n",buffer);
lltoa (i,buffer,HEX);
printf ("hexadecimal: %s¥n",buffer);
lltoa (i,buffer,OCTAL);
printf ("octal: %s¥n",buffer);
}
return 0;
}
出力
decimal: 1234
hexadecimal: 4d2
octal: 2322