jtwc 发表于 2023-6-1 16:28

C++中出现如下错误?

各位老师,C++中出现如下错误该如何处理呢?
0x00007FF8C5DBCFEB (msvcr120d.dll) (Ctp_Project.exe 中)处有未经处理的异常:将一个无效参数传递给了将无效参数视为严重错误的函数。

Eaglecad 发表于 2023-6-1 16:48

空指针。你点击重试,选择调用堆栈,就能定位到位置了

jtwc 发表于 2023-6-1 16:52

Eaglecad 发表于 2023-6-1 16:48
空指针。你点击重试,选择调用堆栈,就能定位到位置了

昨天都没有问题,今天把系统调整了一下,应该是把什么系统文件误删了?

jtwc 发表于 2023-6-1 16:57

Eaglecad 发表于 2023-6-1 16:48
空指针。你点击重试,选择调用堆栈,就能定位到位置了

刚才把VS程序咋调成这样哪,咋恢复?

lushihao 发表于 2023-6-1 17:10

代码打断点一行行走看看到那一行报错 ,然后观察参数是否有空指针

only998 发表于 2023-6-1 17:12

fread前要检查 fopen的返回值是不是空指针。

jtwc 发表于 2023-6-1 18:16

only998 发表于 2023-6-1 17:12
fread前要检查 fopen的返回值是不是空指针。
老师,是这个错误,如何改呢?
FILE* file = fopen(".\\y.oth", "wb");
                fclose(file);
                file = fopen("D:\\dzh8.15\\USERDATA\\SelfData\\DATA3\\ag2308.dat", "rb");
                {
                        printf("File open failed!\n");
                        
                }

                int rDate;
                float rValue;
                fread(&rValue, sizeof(float), 1, file);//读取最后1个float型数据内存地址
                printf("Value = %.f\n", rValue);//读取第1个float型数据
                fclose(file);

WindGrin 发表于 2023-6-1 20:01

jtwc 发表于 2023-6-1 18:16
老师,是这个错误,如何改呢?
FILE* file = fopen(".\\y.oth", "wb");
                fclose(file); ...

判断是空指针 就报个错 狠狠的拍在屏幕上{:1_918:}

only998 发表于 2023-6-1 20:29

jtwc 发表于 2023-6-1 18:16
老师,是这个错误,如何改呢?
FILE* file = fopen(".\\y.oth", "wb");
                fclose(file); ...

FILE *file = fopen(xxxx)
if( file == nullptr ){
   出错啦,文件不存在,或者文件正在被别的程序占用
}

Eaglecad 发表于 2023-6-1 23:11

jtwc 发表于 2023-6-1 16:57
刚才把VS程序咋调成这样哪,咋恢复?

取消,或者任务管理器结束
页: [1] 2
查看完整版本: C++中出现如下错误?