用vs2013编写程序时提示“使用了未初始化的局部变量”
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用vs2013编写程序时提示“使用了未初始化的局部变量”相关的知识,希望对你有一定的参考价值。
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define NUM ok
int main(void)
struct stu
int num;
char *name[10];
char sex;
float score;
*ps;
int k = strlen(ps->name);
ps = (struct stu*)malloc(sizeof(struct stu));
ps->num = 102;
strcpy_s(ps->name, k, "zhang");
ps->sex = 'M';
ps->score = 60;
#ifndef NUM
printf_s("Number = %d score=%f", ps->num, ps->score);
#else
printf_s("Name = %s Sex = %c", ps->name, ps->sex);
#endif
free(ps);
return 0;
而且你的name类型可能写错了。追问
我明白了,我在使用strlen(ps->name);时,ps->name字符数组为空,当ps->name字符数组有字符串后再用strlen(ps->name)就没报错了
本回答被提问者采纳VS编译运行时提示:应用程序并行配置不正确,无法启动程序
这种情况网上搜索结果一大堆,基本都是提示缺失dll,没有启用windows模块安装服务等等,这个要结合个人实际情况看
这种问题出现如果是第一次使用vs遇到了,可以尝试其他网站出来的内容,如果vs天天用,一个运行正常的项目,突然就不能用了,这不很奇怪吗?
你相信灵异事件吗?
《程序员遇到解决不了的bug时还真可能信hhhhhhhhhhhhh》
不可能回突然丢失某个c++dll吧
这个时候要检查问题很简单也,微软提示还算友好,人家已经告诉你了去查看应用程序日志,先找到Debug目录,启东应用程序,让错误再提示一次,然后去找日志
控制面板-》系统和安全-》管理工具-》查看事件日志
windows日志-》应用程序 不出意外,最上面第一个就是你刚刚提示出的错误日志信息
点击在下面常规显示信息里可以看到具体错误信息,xxxxconfig文件 xx行出现错误
这时候基本可以断定,是你或者其他使用这个项目的人修改config配置文件改错误,导致程序不能初始化启动
接下来很简单了,如果配置文件不多,一行行删,一行行找
如果配置文件很多,那你一定有曾经发布过可以用的版本吧,找到里面的配置文件,用Ultracompare工具比较下两个文件的差异就好了,工具网上自行下载
如果你再懒得不行,那你直接把发布可用的配置文件复制过来吧,就可以用了
以上是关于用vs2013编写程序时提示“使用了未初始化的局部变量”的主要内容,如果未能解决你的问题,请参考以下文章
vs2010中使用C#编写与ArcGIS Engine相关程序时提示错误,错误信息如下