所以,我是C++的新手。我需要快速学习这门语言,以便上学。但我遇到了一些问题,这些问题使我很难使用这门语言。我下载了Visual Studio代码,并按照学校提供的步骤操作。但现在我遇到了这样的问题,有时我的代码就是无法打印。
下面是一段打印代码的示例(顺便说一句,我使用“makefile”来运行所有这些代码):
#include <iostream>
int main()
{
std::cout << "Hello world!" << std::endl;
return 0;
}
当然,这只是一个简单的“hello world”,但它仍然可以打印。现在我将给予一段无法打印的代码的示例:
// C++ program to sort an
// array using bucket sort
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;
// Function to sort arr[] of
// size n using bucket sort
void bucketSort(float arr[], int n)
{
cout << "hello" << endl;
// 1) Create n empty buckets
vector<float> b[n];
// 2) Put array elements
// in different buckets
for (int i = 0; i < n; i++) {
int bi = n * arr[i]; // Index in bucket
b[bi].push_back(arr[i]);
}
// 3) Sort individual buckets
for (int i = 0; i < n; i++)
sort(b[i].begin(), b[i].end());
// 4) Concatenate all buckets into arr[]
int index = 0;
for (int i = 0; i < n; i++)
for (int j = 0; j < b[i].size(); j++)
arr[index++] = b[i][j];
}
/* Driver program to test above function */
int main()
{
cout << "hello" << endl;
float arr[]
= { 0.897, 0.565, 0.656, 0.1234, 0.665, 0.3434 };
int n = sizeof(arr) / sizeof(arr[0]);
bucketSort(arr, n);
cout << "Sorted array is \n";
for (int i = 0; i < n; i++)
cout << arr[i] << " ";
return 0;
}
这是我在网上找到的一个bucket排序的例子。首先,vector<float> b[n]
行的“n”显示了一条红线,我选择了“忽略此错误”选项。其次,此代码不会输出任何内容。如果我查看“调试控制台”,我会发现以下错误:错误:无法启动调试。命令“-exec-run”的意外GDB输出。启动期间,程序退出,代码为0xc 0000139。
当我上网的时候,我看到一些人给予我降级我的gdb版本。我想试试,但是我找不到怎么做哈哈。有人能帮我让我的visual studio代码工作吗?这是编程中最让我恼火的部分。
1条答案
按热度按时间dwthyt8l1#
ERROR: Unable to start debugging. Unexpected GDB output from command "-exec-run". During startup program exited with code 0xc0000139.
此错误意味着程序根本没有启动,即在进程设置期间死亡。
在UNIX上,这通常发生在GDB exec-wrapper死亡时,但我不知道VSCode如何设置GDB,以及在什么情况下它会像这样死亡。
一般建议: