关于#c语言#的问题:在慕课上看课程一步一步跟着做的

在慕课上看课程一步一步跟着做的,结果变成这样,我看视频里直接就调试成功了啊。

img

补一张图,点RUn Code之后输出了这玩意儿。

img

gcc是不是没有正确安装或者配置,先装好,再打开 launch.json 配置下路径

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7640759
  • 以下回答来自chatgpt:

    根据参考资料和问题描述,我理解到你在跟着慕课学习C语言时遇到了调试问题。你使用慕课上的视频教程一步一步地做,但在调试过程中遇到了错误的输出结果。你还提供了一张代码输出的截图。根据参考资料中的代码和解释,我将逐步解决你的问题。

    首先,根据参考资料中的段落1,你提到的代码是合法的,且数组名和数组首元素的地址是一样的。因此,你可以将数组名存放到指针变量中来访问数组。

    接下来,根据参考资料中的段落2,你提到的代码在指针的使用上存在问题。标准规定允许指向数组元素的指针与指向数组最后一个元素后面的那个内存位置的指针进行比较,但不允许与指向第一个元素之前的那个内存位置的指针进行比较。

    解决方案: 1. 检查你的代码,确保你正确地将数组名存放到指针变量中,以便访问数组的元素。可以参考段落1中的示例代码来修改你的代码,确保指针的使用正确。 2. 检查你的代码中是否存在与数组首元素之前的内存位置进行比较的情况。如果有,需要进行相应的修改,以遵守标准规定。

    以下是使用段落1中的示例代码改进你的代码:

    #include <stdio.h>
    
    int main()
    {
        float a[5];
        float* p;
        for (p = &a[4]; p >= &a[0]; p--)
        {
            *p = 0;
        }
        return 0;
    }
    

    以上是我对你的问题的解答和具体的解决方案。如果你有任何进一步的疑问,请随时提问。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^