_itoa, _i64toa, _ui64toa, _itow, _i64tow, _ui64tow
Tamsayı, bir dizeye dönüştürür.Bu işlevlerin daha güvenli sürümleri mevcuttur; bkz. _itoa_s, _i64toa_s, _ui64toa_s, _itow_s, _i64tow_s, _ui64tow_s.
char *_itoa(
int value,
char *str,
int radix
);
char *_i64toa(
__int64 value,
char *str,
int radix
);
char * _ui64toa(
unsigned _int64 value,
char *str,
int radix
);
wchar_t * _itow(
int value,
wchar_t *str,
int radix
);
wchar_t * _i64tow(
__int64 value,
wchar_t *str,
int radix
);
wchar_t * _ui64tow(
unsigned __int64 value,
wchar_t *str,
int radix
);
template <size_t size>
char *_itoa(
int value,
char (&str)[size],
int radix
); // C++ only
template <size_t size>
char *_i64toa(
__int64 value,
char (&str)[size],
int radix
); // C++ only
template <size_t size>
char * _ui64toa(
unsigned _int64 value,
char (&str)[size],
int radix
); // C++ only
template <size_t size>
wchar_t * _itow(
int value,
wchar_t (&str)[size],
int radix
); // C++ only
template <size_t size>
wchar_t * _i64tow(
__int64 value,
wchar_t (&str)[size],
int radix
); // C++ only
template <size_t size>
wchar_t * _ui64tow(
unsigned __int64 value,
wchar_t (&str)[size],
int radix
); // C++ only
Parametreler
value
Dönüştürülecek sayı.str
Sonuç dizesi.radix
Base of value; hangi aralığı 2–36 içinde olması gerekir.
Dönüş Değeri
Bu işlevlerden her biri için bir işaretçi döndürür str.Döndürülen hata yok.
Notlar
_itoa, _i64toa, Ve _ui64toa rakamını dönüştürme işlevleri verilen value bağımsız değişkeni null sonlandırılmış bir karakter dizesi için ve sonucu depolar (en çok 33 karakterler için _itoa ve 65 için _i64toa ve _ui64toa), str.Yoksa radix eşittir 10 ve value ise negatif, ilk saklı dize eksi işareti karakteridir ( – )._itow, _i64tow, ve _ui64tow geniş karakter sürümü olan _itoa, _i64toa, ve _ui64toa, sırasıyla.
Güvenlik Notu |
---|
Arabellek taşmaları önlemek için emin str arabellek dönüştürülen sayılar artı sonunda null karakteri ve işareti karakterini tutabilecek kadar büyük. |
C++ dilinde, bu işlevlerin daha yeni ve güvenli karşıtlarını başlatan şablon aşırı yüklemeleri vardır.Daha fazla bilgi için bkz. Güvenli Şablon Aşırı Yüklemeleri.
Genel Metin Yordam Eşleşmeleri
Tchar.h yordamı |
_UNICODE ve _MBCS tanımlanmaz |
_MBCS tanımlanmış |
_UNICODE tanımlanmış |
---|---|---|---|
_itot |
_itoa |
_itoa |
_itow |
_i64tot |
_i64toa |
_i64toa |
_i64tow |
_ui64tot |
_ui64toa |
_ui64toa |
_ui64tow |
Gereksinimler
Yordam |
Gerekli başlık |
---|---|
_itoa |
<stdlib.h> |
_i64toa |
<stdlib.h> |
_ui64toa |
<stdlib.h> |
_itow |
<stdlib.h> |
_i64tow |
<stdlib.h> |
_ui64tow |
<stdlib.h> |
Daha fazla uyumluluk bilgisi için Giriş altındaki Uyumluluk bölümüne bakın.
Örnek
// crt_itoa.c
// compile with: /W3
// This program makes use of the _itoa functions
// in various examples.
#include <string.h>
#include <stdlib.h>
int main( void )
{
char buffer[65];
int r;
for( r=10; r>=2; --r )
{
_itoa( -1, buffer, r ); // C4996
// Note: _itoa is deprecated; consider using _itoa_s instead
printf( "base %d: %s (%d chars)\n", r, buffer, strnlen(buffer, _countof(buffer)) );
}
printf( "\n" );
for( r=10; r>=2; --r )
{
_i64toa( -1L, buffer, r ); // C4996
// Note: _i64toa is deprecated; consider using _i64toa_s
printf( "base %d: %s (%d chars)\n", r, buffer, strnlen(buffer, _countof(buffer)) );
}
printf( "\n" );
for( r=10; r>=2; --r )
{
_ui64toa( 0xffffffffffffffffL, buffer, r ); // C4996
// Note: _ui64toa is deprecated; consider using _ui64toa_s
printf( "base %d: %s (%d chars)\n", r, buffer, strnlen(buffer, _countof(buffer)) );
}
}