Ошибка сегментации, я не знаю почему?
Привет, ребята, может ли кто-нибудь помочь мне, моя программа скребется, и когда я отлаживаю ее, она принимает "ошибку сегментации SIGSEGV" и показывает мне мое окно процессора. Это происходит только в Dev-C++, в visual studio это идет хорошо, но я хочу, чтобы это было сделано в Dev-C++. Курсор в отладке остается на строке 30 (str2[k] = str1[j];). У меня 32-битная ОС.
Спасибо за помощь.
<pre lang="c#"> #include <stdio.h> #include <string.h> //príklad 2 int main() { FILE *fr,*fw; int c,i=0,k=0,f = 0; char str1[50]; char str2[50]; fr = fopen ("vstup.txt","r"); fw = fopen ("vystup.txt","w"); while ((c=getc(fr)) != EOF){ str1[i] = c; i++; } str1[i]= '\0'; fclose (fr); printf("%s",str1); i=0; while (str1[i] != EOF) { if(str1[i] == '\n') { for (int j=i-1;j>=f;j--) { str2[k] = str1[j]; k++; } f = i+1; str2[k] = '\n'; k++; } i++; } str2[k] = '\0'; fprintf(fw,"%s",str2); fclose (fw); return 0; }
Что я уже пробовал:
Потому что я немного новичок в программировании, я не знал об этой ошибке(в первый раз, когда я ее получаю), я знаю, что это что-то с memmory acces и т. д.