_i64toa, _i64tow
math.h:インデックス への移動
ヘッダーファイル
math.h, stdlib.h
カテゴリ
変換ルーチン,演算ルーチン
プロトタイプ
char *_i64toa(__int64 value, char *string, int radix);
wchar_t *_i64tow(__int64 value, wchar_t *string, int radix);
説明
_i64toa は,__int64 を文字列に変換します。_i64tow は,Unicode バージョンです。これは,__int64 をワイド文字文字列に変換します。
これらの関数は,value をヌルで終わる文字列に変換し,その結果を string に格納します。value は __int64 です。
radix は,value の変換に使用される基数を指定します。2 ~ 36 の値を指定する必要があります。value が負で,radix が 10 の場合,文字列の最初の文字は負符号(-)になります。
メモ: string に割り当てられた領域には,返される文字列(ヌルターミネータ(\0)を含む)を保持できるだけの十分な大きさが必要です。これらの関数は,最大 33 バイトを返すことができます。
戻り値
string へのポインタを返します。
コード例
#include <stdlib.h>
#include <math.h>
wchar_t* add_i64_str(wchar_t* left, wchar_t* right)
{
/* Transform the input strings into __int64 */
__int64 d_left = _wtoi64(left);
__int64 d_right = _wtoi64(right);
/* Allocate enough space */
wchar_t* result = (wchar_t*)malloc(sizeof(wchar_t) * 64);
/* Return the summed values */
_i64tow(d_left + d_right, result, 10);
}
移植性
| POSIX | Win32 | ANSI C | ANSI C++ | |
|---|---|---|---|---|
|
_i64toa |
+ |
|||
|
_i64tow |
+ |