我想写一个把 整型数字 换成 字符数组 的函数
我的程序如下
#include<bits/stdc++.h>
using namespace std;
zifu(int a){
char str[20];
sprintf(str,"%d",a);
return str;
}
int main(){
int m;
cin>>m;
cout<<zifu(m);
}
但是报错了,我也不知道问题在哪,请帮忙解答!
我想写一个把 整型数字 换成 字符数组 的函数
我的程序如下
#include<bits/stdc++.h>
using namespace std;
zifu(int a){
char str[20];
sprintf(str,"%d",a);
return str;
}
int main(){
int m;
cin>>m;
cout<<zifu(m);
}
但是报错了,我也不知道问题在哪,请帮忙解答!
基于Monster 组和GPT的调写:
这个程序存在几个问题:
下面是修正后的代码:
#include <bits/stdc++.h>
using namespace std;
char* zifu(int a){
static char str[20];
sprintf_s(str, 20, "%d", a);
return str;
}
int main(){
int m;
cin >> m;
cout << zifu(m);
}
或者使用std::string作为返回类型,避免了内存管理问题:
#include <bits/stdc++.h>
using namespace std;
string zifu(int a){
char str[20];
sprintf_s(str, 20, "%d", a);
return string(str);
}
int main(){
int m;
cin >> m;
cout << zifu(m);
}