请问如何把数字 12345678901 转化为字符串 "12345678901"?谢谢!!

解决方案 »

  1.   

    int sprintf(
       char *buffer,
       const char *format [,
          argument] ... 
    );Write formatted data to a string.
      

  2.   

    #include <iostream>
    using namespace std;int main()
    {
    char szNum[20] = {0};
    __int64 num = 12345678901; _i64toa(num, szNum, 10); cout << szNum << endl; return 0;
    }
      

  3.   

    __int64 i8Data = 12345678901 ;
    WCHAR wcsBuf[sizeof(__int64)+1];
    swprintf( wcsBuf , L"%I64u" , i8Data ) ;
      

  4.   


    脑子坏了,写错了前面
    __int64 i8Data = 12345678901 ; 
    WCHAR wcsBuf[65]; 
    swprintf( wcsBuf , L"%I64u" , i8Data ) ;
      

  5.   

    直接写WCHAR是非常不好的习惯,你应该写成:
    __int64 i8Data = 12345678901 ;
    TCHAR tcsBuf[65];
    _stprintf( wcsBuf , _T("%I64u") , i8Data ) ;
      

  6.   

    使用_itoa()函数转换,将数字转为字符串,详细建议查看msdn
      

  7.   

    有心的人可以看看:相信对你帮助的。
    把整数转换成字符串的函数有:
    itoa(......)转换整型数据,_i64toa(.....)转换64位整型数据;
    ui64toa(....)转换无符号64位整型数据,_itow(....),_i64tow(....),_ui64tow(....).
    函数原型如下:
    char * _itoa{ int  value, char * string, int  radix }           
    char * _i64toa{ int64 value,char *string,int  radix }
    char * _u64toa{ unsigned _int64 value,char *string,int radix}
    wchar _t * _itow{ int value,wchar_t * string, int radix}
    wchar _t * _i64tow{ int value,wchar_t * string, int radix}
      

  8.   

    在32位主导的桌面系统下:
    TCHAR会随着项目变大,造成很多隐藏的问题.
    过去是在从char->wchar的阵痛期.
    现在就不要再执着于单字符的兼容了.
    char就char,wchar就wchar.
    类似现在是32->64的阵痛.
    若干年后,随着桌面系统全面64,还有人执着于32位兼容吗?
    您的话,过去我赞同,但现在是弊大于利.
    因为宽字符已经全面取代char了,所以有利的方面越来越少,不好的方面也越来越凸显.
      

  9.   

    温馨提示:不能使用itoa函数,会溢出的^_^