gpt4 book ai didi

c++ - C - 正在使用变量 'p_prvy' 而未初始化

转载 作者:太空宇宙 更新时间:2023-11-03 10:32:10 25 4
gpt4 key购买 nike

我正在尝试编译我的代码,但我无法编译它。我正在使用 VS 2010 并收到此消息:

'Tel_zoznam.exe': Loaded 'C:\Windows\SysWOW64\msvcr100d.dll', Symbols loaded. Run-Time Check Failure #3 - The variable 'p_prvy' is being used without being initialized.

它停止在 p_prvy->next = NULL;

这是我的代码:

#include "stdafx.h"

#define MAX 31

typedef struct ZOZNAM{
char meno[MAX];
char priezvisko[MAX];
char cislo1[MAX];
char cislo2[MAX];
char cislo3[MAX];
struct ZOZNAM *next;
} ZOZNAM;

int main(void){
char c;
ZOZNAM * p_prvy;
ZOZNAM * p_akt;
p_prvy->next = NULL;
int z;
p_akt=p_prvy;

printf(" Pre pridanie kontaktu do zoznamu stlacte 'p'\n Pre vypis zoznamu zadajte 'v'\n Pre ukoncenie programu zadajte 'k'\n");
z=pocet_zaznamov();
printf("%d",z);
while(1==1){
scanf("%c",&c);

switch(c){
case 'p': vlozit(p_akt); break;
case 'v': vypis(p_prvy); break;
case 'n': nacitanie(p_akt); break;
}
}
return 0;
}

最佳答案

它几乎可以告诉您错误是什么:您在初始化变量之前使用了它,因此您调用了未定义的行为。

ZOZNAM *p_prvy;
p_prvy->next = NULL;

是错误的,因为您还没有为 p_prvy 分配内存,但您取消引用了它。为您的数据类型创建一个构造函数(并考虑您的设计)。

关于c++ - C - 正在使用变量 'p_prvy' 而未初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13848048/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com