每当我在VS代码中点击运行按钮时,我都会遇到这个错误:
我以前每次运行它都会收到这段代码,它工作得很好:
它要求我选择给定的调试器:
当我使用独立的gcc命令时,我的代码工作得很好,但仍然是这里的代码。
#include <stdio.h>
int main() {
int arr1[50] = { 1, 2, 3, 4, 5, 6, 7, 8 };
int arr2[50] = {};
int i, temp;
int n = 8;
int turn = n - 1;
int sort = 1;
for (i = 0; i < n - 1; i++) {
if (arr1[i] > arr1[i + 1]) {
temp = arr1[i];
arr1[i] = arr1[i + 1];
arr1[i + 1] = temp;
sort = 0;
n--;
}
i++;
if (i < n - 1) {
turn--;
if (!turn || sort) {
break;
}
i = 0;
sort = 1;
}
}
for (i = 0; i < 8; i++) {
printf("%d ", arr1[i]);
}
}
有关更多信息,它发生后,新的VS代码更新可用版本1.82请帮助我重置我的设置或任何其他问题,我可能会面临。
我已经重置了代码运行器扩展,并检查了所有必须使用代码运行器的设置:
2条答案
按热度按时间gcuhipw91#
无法直接从VSCode编译,因为配置文件无效:
cpp.exe
不是C编译器,而是一个需要单个参数的C预处理器。此外,传递源文件的全名(包括带有嵌入空格的目录名)会导致此程序接收多个参数。源文件名必须用引号括起来,以防止嵌入的空格用作参数分隔符。当我使用独立的gcc命令时,我的代码工作得很好,但仍然是这里的代码。
我担心代码只工作,因为数组已经排序。
n
,而只是在到达数组的末尾时。您可以将一个sort
标志和多个turns
组合在合并中:这种类型的排序算法的更简单的方法是使用嵌套循环和单个sorted
标志。以下是修改后的版本:
mzsu5hc02#
以下是一些有效的步骤:
1.重新启动系统(ofc一直工作)。
1.然后我删除了.vs代码文件夹,该文件夹已创建了一些文件,由于不必要的点击错误的选项,而选择GCC。
1.使用了一个正常的代码,没有任何错误,就像一个简单的print语句。
1.在VS代码上单击运行代码。https://i.stack.imgur.com/8gWzQ.png
1.选择g++.exe选项,如图所示。https://i.stack.imgur.com/SVmQg.png
1.它成功地工作了,现在用你之前尝试的代码替换你的代码,它就可以工作了。
1.默认情况下,终端将运行给定的命令,考虑到文件名为world. c