c语言中“在xxxx处有未经处理的异常”问题的分析与解决
来源:互联网 发布:管家婆软件使用视频 编辑:程序博客网 时间:2024/04/27 23:59
在用局部变量写了链表之后,容易出现的问题是链表头的生命期结束。笔者为了避免这个问题用了一个malloc(),结果在运行的问题就出现了如题的问题。查了下资料大致知道怎么解决这种问题了。
笔者一开始的代码是这样的:
//CREATE THE HEAD OF A LINKED LISTWord_list* linked_list_head = (Word_list*) malloc(sizeof(Word_list));linked_list_head->next = 0;<span style="white-space:pre"></span>//此处Word_list* previous;Word_list* current;Word_list* pointer_learn;//START TO READ THE DATAFILE* filepointer = fopen(filename, "rb");Word_list* object = (Word_list*) malloc(sizeof(Word_list));fread(&object->word, 1, sizeof(object->word), filepointer);fread(&object->explain, 1, sizeof(object->explain), filepointer);fread(&object->example_sentence, 1, sizeof(object->example_sentence), filepointer);fread(&object->count_total, 1, sizeof(object->count_total), filepointer);fread(&object->count_correct, 1, sizeof(object->count_correct), filepointer);fread(&object->rate_correct, 1, sizeof(object->rate_correct), filepointer);object->next = 0;linked_list_head->next = object;<span style="white-space:pre"></span>//和此处
然后运行就显示错误。
犹未初始化的指针变量,编译器默认将未初始化的指针初始化为0xcc,而0xcc是被保护的数据区,因此程序崩溃。
抱着试一试的态度,笔者将linked_list_head->next = 0改成了linked_list_head->next = NULL。OK,问题解决!
1 0
- c语言中“在xxxx处有未经处理的异常”问题的分析与解决
- 解决C++/CLI中关于“MissingManifestResourceException类型的未经处理的异常出现在mscorlib.dll”问题一例
- 有未经处理的异常
- 0x00D83DDA 处有未经处理的异常(在 DXFont.exe 中): 0xC000041D: 用户回调期间遇到未经处理的异常
- 程序运行时会出现 xxxx.exe 中的 0x00fa1c29 处有未经处理的异常: 0xC00000FD: Stack overflow
- 程序运行时会出现 xxxx.exe 中的 0x00fa1c29 处有未经处理的异常: 0xC00000FD: Stack overflow
- 0x003B8027 处有未经处理的异常(在*.exe 中): 0xC00000FD: Stack overflow (参数: 0x00000000, 0x00252000)
- devenv.exe 中的 处有未经处理的异常
- 如何解决未经处理的win32异常
- 如何解决未经处理的win32异常
- 如何解决未经处理的win32异常
- 未经处理的异常
- 【语言-C++】Image - .exe 中的 0x0043a998 处有未经处理的异常: 0xC0000005: 读取位置 0x029d846c 时发生访问冲突
- 解决 ActiveX 0x7730DCBB (ntdll.dll) (iexplore.exe 中)处有未经处理的异常: 0xC0000374: 堆已损坏。 (参数: 0x77344268)。
- 异常处理--“System.BadImageFormatException”类型的未经处理的异常在 DataTest.exe 中发生
- ActiveX 采用_onexit()或atexit() 导致的 0x3115DF9F 处有未经处理的异常(在 iexplore.exe 中): 0xC0000005: 执行位置 0x3115DF9F
- 链接库加载,“”(*.exe 中)处有未经处理的异常: 0xC0000005: 写入位置 0x40B9CA00 时发生访问冲突”的问题所在
- C++中发生“"0x54402fed (msvcr100d.dll) 处有未经处理的异常:”内存方面的错误的解决方案
- Rufus安装Win7操作系统出现“press any key to boot from usb”解决方案
- kafka本地存储5-LogManager
- ajax - get() 方法
- Linux 常用命令
- iOS Crash 分析
- c语言中“在xxxx处有未经处理的异常”问题的分析与解决
- linux 中的rime 输入法 自定义 新世纪五笔输入法
- 前端一些写法
- 好用免费【易WiFi】易建联上网,不掉线
- POJ 2983 Is the Information Reliable? (约束差分系统||SPFA判负权环)
- Feescale K60开发笔记2: TFTP服务的启用
- 改善Java Script程序的建议(二)
- mybatis补充教程之二:传递多个参数的方法(Multiple parameters)
- 动态规划——背包