返回值3221225477?

我对编码很陌生,所以请放手

这是我的代码

<div id="table" class="row clearfix"></div>

问题出在函数loginScreen()中,函数getDetails()得到运行,但是一旦完成3221225477,有人可以指出我为什么会这样吗?看来我正在正确分配内存和所有内容。我试图找出原因,但什么也找不到。

z979581569 回答:返回值3221225477?

3221225477是十六进制的0xC0000005,它是NTSTATUS代码STATUS_ACCESS_VIOLATION。您的程序以某种方式破坏了其工作内存。而是在Linux上编译程序;那么您可以在valgrind下运行它,并准确告知问题出在哪里。

(valgrind是一种非常有价值的调试工具,我建议所有C程序员都不要安装Linux,即使他们不需要其他安装,也可以使用valgrind。不幸的是,它从未移植到Windows。如果您现在不想花几个小时重新配置计算机以进行永久性双重引导,则可以通过从Ubuntu liveCD进行引导来临时访问Linux。)

没有理由应该让您将3221225477识别为Windows NT低级错误代码。在IDE上提交错误报告;它应该为您解码这些。

,

如果您看看signature of fscanf() function,它会说

scanf()系列函数根据如下所述的格式扫描输入。此格式可能包含转换说明符;这些转换的结果(如果有的话)通过指针参数存储

,您的getDetails()函数需要三个参数;第一个拖曳是指向字符指针的指针,又名 ** char * char [] ,最后一个是 int

void getDetails(char **properID,char **properPASS,int nurses)

在您的fscanf()调用中,您正在传递properIDproperPASS参数的地址,即使这些参数本身就是指针。如果按照下面的说明更新fscanf()调用,您的代码应该可以正常工作。

fscanf(ptr,"%[^.]%*c%s\n",properID[nurses],properPASS[nurses]);
本文链接:https://www.f2er.com/2910801.html

大家都在问