下面是我的C++程序的開始。它對我來說看起來很正常,但是當我運行它時,我得到了分段錯誤。這是調試器給我:調試器嚴重檢測到C++分段錯誤
Program received signal SIGSEGV, Segmentation fault.
0x00000000004008d4 in main() at usu.cpp:12
12 cin >> n >> k;
但errer沒有與這行代碼,當我把「reutrn 1」之前的循環程序becouse連接正常結束。什麼可能是錯的?我編譯使用我的程序:G ++ -ggdb3
#include <iostream>
#include <stdio.h>
#define MAX_N 1000000
#define MAX_K 1000000
#define MAX_IL_KROKOW 500000
using namespace std;
int main()
{
int n, k;
cin >> n >> k;
char klocki[MAX_N+1];
int Przes_C[MAX_IL_KROKOW];//podaje następne c po c znajdującym się na pozycji i
int Ktore_b[MAX_N];//na podstawie indeksu b w klockach zwraca indeks w tablicy Przes_b
int Przes_b[MAX_N];//zwraca indeks b w klockach na podstawie występowania b
int poprz_c = -1;
int ilosc_b = 0;
int klocki_len = 0;
for(int i=0;i<n;i++)
{
klocki[i] = getchar();
return 1;
if(klocki[i] == 'b')
{
Przes_b[ilosc_b] = i;
Ktore_b[i] = ilosc_b;
ilosc_b++;
}
if(poprz_c != -1 && klocki[i] == 'c')
Przes_C[poprz_c] = i;
if(klocki[i] == 'c')
poprz_c = i;
klocki_len++;
}
klocki[klocki_len] = '\0';
BTW如果您使用的是C++,你應該包括代替 –
Kylo
堆棧溢出:-) – JohnB