Wieloznacznosc zmiennej przy kompilacji

0

Witam. Przy kompilacji takiego kodu (podaje tylko funkcje main bo reszta nie ma znaczenia) wyskakuje mi nastepujacy blad: " [Warning] multi-character character constant [-Wmultichar] "

int main()
{
int k;
char c;
int m;
cout<<"Podaj rozmiar tablicy";
cin>>m;

cout<<"Wpisz jakis tekst";

for(k=0;;k++)
{
cin>>c;
while(c!='EOF')
{
	c=tab[k];
	
}

}
tekst(tab, m);
}

0

Błąd dotyczy linijki z warunkiem while. Robisz 2 błędy. Po pierwsze w apostrofy 'A' można wstawic jeden znak, wiecej znaków to cudzysłów "abc". Drugi błąd to EOF. Dlaczego masz go wziętego w apostrofy? EOF to znacznik końca pliku i sam w sobie jest już znakiem;

0

Zmienilem na while(c!=EOF) ale wyskakuje mi teraz blad : " [Error] 'EOF' was not declared in this scope "

0

W nagłówku mam tylko #include <iostream> . Moze tu lezy blad i trzeba dołaczyc jeszcze jakas biblioteke ?

0

Mógłbyś czasami sam sprawdzić w internecie: http://www.cplusplus.com/reference/cstdio/EOF/

0

Dzieki wielkie.

0

Jeśli porównujesz c z EOF, to zmienna c powinna być typu int. I wczytywana chyba czymś innym niż cin >> - zasadniczo to funkcją getchar ze stdio.

1 użytkowników online, w tym zalogowanych: 0, gości: 1