c++ sprintf() 把一个int 转成char *a
答案:4 悬赏:0
解决时间 2021-02-07 19:28
- 提问者网友:千城墨白
- 2021-02-07 15:15
c++ sprintf() 把一个int 转成char *a
最佳答案
- 二级知识专家网友:零负荷的放任
- 2021-02-07 15:49
int x = 1;
char *b;
char bAddress[32];
*b = &bAddress;
sprintf(bAddress, "%d", x); //如果要转成字符1,需要
char *b;
char bAddress[32];
*b = &bAddress;
sprintf(bAddress, "%d", x); //如果要转成字符1,需要
全部回答
- 1楼网友:星星坠落
- 2021-02-07 17:18
sprintf(b, "%d", x); 注意缓冲区b有要有足够的空间
- 2楼网友:恕我颓废
- 2021-02-07 17:05
sprintf是c++继承自c语言的函数,无法直接支持string类型,所以要先把string类型转为基础类型,也就是char*,这里需要使用string类的成员函数c_str();该成员函数功能为,将string的内容转为c语言的字符数组表达形式。
所以用sprintf将string对象str,输出的char[]数组array中的代码可以写作:
sprintf(array, "%s", str.c_str());
除此外,还可以用strcpy函数,使代码更简单:
strcpy(array, str.c_str());
- 3楼网友:强势废物
- 2021-02-07 16:09
int x = 1;
char *p = new char[16];
sprintf(p,"%d",x);
delete[] p;
p = NULL;
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯