WarningC63585的解决方法

2020-03-13  本文已影响0人  leadingwerido

WarningC63585的解决方法


 今天在写作业的时候,遇到了一个很奇怪的错误,如下图


0001.jpg

它认为我的all=(student*)malloc(num*sizeof(student))的代码有问题,在实际上来看我的代码,是没有问题的,因为num是我定义的一个用来存储学生人数的变量,但是编译器认为可能存在错误。
经过调试,发现编译器认为我输入的num可能存在非正数的情况,那样的话all就没有合理的空间申请,后面的利用也就有了问题,因此只要在申请空间之前,加一步检验num为正数就可以了

加入代码为

if (num < 1)
{
    cout << "输入的数字有错误" << endl;
    return -1;
}

warning消失

上一篇下一篇

猜你喜欢

热点阅读