Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Pointers C/C++;)为什么在运行程序后忽略了读写访问?_Pointers_Printf_Scanf_Fclose - Fatal编程技术网

Pointers C/C++;)为什么在运行程序后忽略了读写访问?

Pointers C/C++;)为什么在运行程序后忽略了读写访问?,pointers,printf,scanf,fclose,Pointers,Printf,Scanf,Fclose,当我尝试在C中写入和读取txt文件时,在运行该文件后,它没有很好地工作 运行该文件时没有错误,但我不知道为什么它不工作 在output.txt中,写入了无意义的结果 (input.txt中没有任何内容) (-858993460在output.txt中) 我附上我的代码和结果图片 *在收到Adrian的评论后,我添加了返回值以查看返回的值。错误的原因是我没有在input.txt中输入任何内容。我发现在开始编写代码之前,我应该在input.txt中输入一些东西! 在我把数字6输入到input.txt

当我尝试在C中写入和读取txt文件时,在运行该文件后,它没有很好地工作

运行该文件时没有错误,但我不知道为什么它不工作

在output.txt中,写入了无意义的结果

(input.txt中没有任何内容)

(-858993460在output.txt中)

我附上我的代码和结果图片

*在收到Adrian的评论后,我添加了返回值以查看返回的值。错误的原因是我没有在input.txt中输入任何内容。我发现在开始编写代码之前,我应该在input.txt中输入一些东西! 在我把数字6输入到input.txt后,它工作得很好!!我衷心感谢阿德里安。祝您今天过得愉快。救生员

在我将6放入input.txt后,结果: 捕获我创建的output.txt和input.txt:


#包括
int main(){
文件*输入,*输出;
int n,m,o,p,q;
p=fopen_s(&in,“input.txt”,“r”);
q=fopen_s(&out,“output.txt”,“w”);
m=fscanf_s(在、%d、&n中);
o=fprintf(输出,“%d\n”,n);
printf(“%d,%d,%d,%d”,p,q,m,o,n);
fclose(in);
fclose(out);
}

您应该检查
fopen_s
fscanf_s
的返回值(并将它们打印到控制台)以查看这些调用是否成功。很抱歉,我不知道如何编辑该代码,如果您不介意,可以编辑该代码吗?谢谢Adrian。添加另外两个
int
变量(例如,
p
q
)和do
p=fopen_s(&in…)
q=fopen_s(&out…
然后
printf
p
q
就像你对
m
o
所做的那样。然后让我们知道这四个变量的值。我做了,得到了0,0,-1,11,就像附件中的图片一样。但我仍然无法理解它们。好的,两个零表示
fopen s
lls起作用了。
11
表示调用
fprintf_s
写了多少个字符,
-1
(即
EOF
)表示
fscanf_s
失败了!可能会向我们显示输入文件的内容。(尽管我刚刚重新阅读了你的问题,你说“input.txt中没有任何内容”-所以你不能从中读取整数!!)你应该检查
fopen_s
fscanf_s
的返回值(并将它们打印到控制台)以查看这些调用是否成功。很抱歉,我不知道如何编辑该代码,如果你不介意的话,可以编辑该代码吗?谢谢Adrian。再添加两个
int
变量(例如,
p
q
)和do
p=fopen_s(&in…
q=fopen_s(&out…
然后
printf
p
q
就像你对
m
o
所做的那样。然后让我们知道这四个变量的值。我做了,得到了0,0,-1,11,就像附件中的图片一样。但我仍然无法理解它们。好的,两个零表示
fopen s
lls起作用了。
11
表示调用
fprintf_s
写了多少个字符,
-1
(即
EOF
)表示
fscanf_s
失败了!可能会向我们显示输入文件的内容。(尽管我刚刚重新阅读了你的问题,你说“input.txt中没有任何内容”-所以不能从中读取整数!!)

#include <stdio.h>

int main() {
 FILE* in, *out;
 int n,m,o,p,q;
 p = fopen_s(&in, "input.txt", "r");
 q = fopen_s(&out, "output.txt", "w");

 m = fscanf_s(in, "%d", &n);
 o = fprintf(out, "%d\n", n);
 printf("%d, %d, %d, %d", p, q, m, o, n);

 fclose(in);
 fclose(out);
}