hur.cn - 华软网

 热门搜索

EVC中的问题

  作者:未知    来源:网络    更新时间:2011/1/11
在EVC下 Unicode字符集编码

TCHAR Numbuffer[2] = {0};//初始化TCHAR数组,初始值为0
_itow ( 75 , Numbuffer, 10 );//将整型数据75转化为以10为基数的字符串,并将字符串存储在Numbuffer中。
问题:
在查看内存操作的时候总能发现函数_itow对Numbuffer数组的3个元素(我定义的数组只有两个元素)举行了操作,即可能发生了数组越界。帮我看一下为什么??
_itow函数功能:
The _itoa, _i64toa, and _ui64toa function convert the digits of the given value argument to a null-terminated character string and stores the result (up to 33 bytes) in string. If radix equals 10 and value is negative, the first character of the stored string is the minus sign ( – ). _itow, _i64tow, and _ui64tow are wide-character versions of _itoa, _i64toa, and _ui64toa respectively. 
_itow是将给定的数据转化成为一个没有结束标志的字符串

---华软 网友回答---
他会给你的字符串末尾加个0,所以要预留一个

这样定义:TCHAR Numbuffer[3] = {0};
---华软网友回复---
留个空间寄存字符串末端的'\0'
---华软网友回复---
楼主你用CString就好了吧      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。