C 如何在文件中保存double类型的矩阵
我需要生成一个double(Dictionary)类型的随机矩阵,并将其保存到一个文件中,以便稍后在另一个程序中读取它们。下面是我如何生成数据的:(好的,我做了最后一次编辑,现在每个元素在循环中生成后都保存到文件中。但是有一个关于fopen不安全的错误!)C 如何在文件中保存double类型的矩阵,c,dataset,C,Dataset,我需要生成一个double(Dictionary)类型的随机矩阵,并将其保存到一个文件中,以便稍后在另一个程序中读取它们。下面是我如何生成数据的:(好的,我做了最后一次编辑,现在每个元素在循环中生成后都保存到文件中。但是有一个关于fopen不安全的错误!) #包括 #包括 #包括 #包括 #包括 /*字典中的列数和行数*/ #定义M(2000) #定义N((int)(M/2)) /*符号函数*/ 双符号(double x){return(x>=0)-(x定义FILE类型的指针,该指针采用字符串(
#包括
#包括
#包括
#包括
#包括
/*字典中的列数和行数*/
#定义M(2000)
#定义N((int)(M/2))
/*符号函数*/
双符号(double x){return(x>=0)-(x定义FILE类型的指针,该指针采用字符串(文件名)和类型模式(w
=write,a
=append,r
=read)。
在矩阵上循环并使用fprintf
FILE *out_file = fopen("name_of_file", "w"); // write only
for (n = 0; n < N; n++)
{
for (m = 0; m < M; m++)
{
fprintf(out_file,"%lf ", D[n][m]);
}
}
FILE*out\u FILE=fopen(“文件名”、“w”);//仅写
对于(n=0;n <代码>为什么你要标记C++?你没有使用它,这是简单的C。此外,请下次正确地格式化你的代码。你错过了一个<代码>。{
在你的主签名之后。你的程序没有编译。什么是id
?可能的重复请修复你的代码!我编辑过一次,你又编辑了一遍。现在轮到你了。基本上有两个选项:fwrite()
或fprintf()
。第一个是人类无法读取的,如果复制到其他系统,可能会失败,第二个是人类可以读取的。感谢您的回答,我是否需要在定义指针之前创建文件?我还收到一个错误,因为fopen不安全!好的,我已经进行了最后一次编辑,现在每个元素都在系统中生成后保存到文件中循环。但是有一个关于fopen不安全的错误!不,您不需要在之前创建文件。使用运算符write,函数会自动创建它。关于不安全,这取决于您使用的编辑器。使用visual studio,可能会使用fprinf_s
FILE *out_file = fopen("name_of_file", "w"); // write only
for (n = 0; n < N; n++)
{
for (m = 0; m < M; m++)
{
fprintf(out_file,"%lf ", D[n][m]);
}
}