Witam, jako że to mój pierwszy post chciałbym pozdrowić wszystkich użytkowników forum :) Postanowiłem ostatnio przesiąść się na linuksa. Jako kompilatora używam gcc-7. Rozwiązywałem zadanie ze SPOJ'a Flamaster. Napisałem taki oto kod:
#include<stdio.h>
int main(){
int a,b,c,n;
char wyraz[200], wyraz2[200];
scanf("%d", &n);
for(int i=0; i<n; i++){
scanf("%s", wyraz);
a=b=c=0;
while(wyraz[a]!='\n'){
b=0;
wyraz2[c]=wyraz[a];
a++; c++;
while(wyraz[a-1]==wyraz[a]){
b++; a++;
}
if(b==1) {wyraz2[c]=wyraz[a-1]; c++;}
else if(b>=2) {wyraz2[c]=b+'0'; c++;}
}
wyraz2[c]='\n';
printf("%s", wyraz2);
}
return 0;
}
Wiem, że zapis
wyraz2[c]=b+'0';
będzie działał tylko dla b z zakresu 0-9, ale większe numery zaimplementuje później. Szukałem błędu przez około 2 godziny, aż wysłałem kod koledze, który odesłał mi screena i powiedział, że u niego program działa bez problemu. Używa on Eclipse i Mingw. Nie wiem, czy powinienem używać innego kompilatora na linuksie? Czy popełniam gdzieś błąd?