问题是如何使输出文件1在第1行,2第2行等,因为程序因为它在每次执行循环时重写文件而你只留9在输出文件中.
#include <fstream>
using namespace std;
void function (int i)
{
ofstream output("result.out");
output << i << endl;
output.close();
}
int main()
{
for (int i=1; i<10; i++)
{
function(i);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我是c ++的初学者,所以答案可能很明显.
我有两个函数 - 一个能够将int转换为字符串,另一个能够将double转换为字符串.然而,将这两者合二为一,会更优雅.我已尝试使用下面的代码,但它产生一个错误:'number'未在此范围内声明
string number_into_string (void* data, int psize)
{
if (psize == sizeof(int))
{
int* number; number =(int*)data;
}
if (psize == sizeof(double))
{
double* number; number = (double*)data;
}
ostringstream convert;
convert << number;
string str = convert.str();
return str;
}
int main()
{
double x =1000;
int y = 5;
string str_x = number_into_string(&x, sizeof(x));
string str_y = number_into_string(&y, sizeof(y));
}
Run Code Online (Sandbox Code Playgroud)