itoaと_itoa_s


itoaと_itoa_s


1.itoa(整数を文字列に変換)char*itoa(int value,char*buffer,int radix);
3つのパラメータがあります.
valueは、変換する数値です.
bufferは、変換結果を格納する文字列です.
radixは、変換に使用される基数であり、2−36である.例えば、2:バイナリ、10:10進数、16:16進数
拡張:ltoa()ロング整数値を文字列ultoa()に変換シンボルなしロング整数値を文字列に変換
例として、10進数を2進数で表す文字列に変換する
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define ll long long  
using namespace std;
char s[32];
int main()
{
   int n;
   while(cin>>n){
    itoa(n,s,2);   
    cout<return 0;
}

2._itoa_s(itoaのセキュリティバージョンで、パラメータと戻り値の違いを除いて、2つの関数の動作は同じで、整数を文字列に変換します)
errno_t _itoa_s(int value, char *buffer, size_t sizeInCharacters, int radix);
_itoa_sはitoaより1つのパラメータを多く出します.
valueは、変換する数値です.
bufferは、変換結果を格納する文字列です.
sizeInCharacters、変換結果を格納する文字列長
radixは、変換に使用される基数であり、2−36である.例えば、2:バイナリ、10:10進数、16:16進数、
Example
#include 
#include 
#include 


int _tmain(int argc, _TCHAR* argv[])
{
    char buffer[65];
    int r;
    for( r=10; r>=2; --r )
    {
       _itoa_s( -1, buffer, 65, r );
       printf( "base %d: %s (%d chars)
"
, r, buffer, strnlen(buffer, _countof(buffer)) ); } return 0; }

ヘッダファイル:cはstdlib.h,c++はcstdlib