• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Czemu Visual Studio wykrywa mi zmienną jako identyfikator?

0 głosów
1,167 wizyt
pytanie zadane 26 maja 2015 w C i C++ przez DavidMCPolska Bywalec (2,770 p.)
zamknięte 27 maja 2015 przez efiku

Więc mam taki kawałek kodu:

char litera[20];
		cout << endl << endl << endl;

		for (int i = 0; i < 20; i++);
		{
			litera[i] = _getch();
			cout << litera[i];
		}

W tym miejscu gdzie jest litera[i] = _getch(); i cout << litera[i]; to tam gdzie jest "i" to jest zmienna, a Visual Studio uważa to za identyfikator "identifier "i" is undefined"

 

Pomoże mi ktoś z tym? Może coś źle robię, albo pominąłem coś. :(

komentarz zamknięcia: Problem rozwiązany.

4 odpowiedzi

+2 głosów
odpowiedź 26 maja 2015 przez Bartek85 Mądrala (7,440 p.)
wybrane 27 maja 2015 przez DavidMCPolska
 
Najlepsza
Usuń ; za for'em...
komentarz 26 maja 2015 przez niezalogowany
faktycznie :)
komentarz 26 maja 2015 przez DavidMCPolska Bywalec (2,770 p.)
Rano sprawdze czy działa, bo teraz tylko na telefonie jestem he he
komentarz 27 maja 2015 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Musi działać :)
0 głosów
odpowiedź 26 maja 2015 przez niezalogowany
edycja 26 maja 2015
EDIT: Błędnie odpowiedziałem, przepraszam
0 głosów
odpowiedź 26 maja 2015 przez DavidMCPolska Bywalec (2,770 p.)
Działa dzięki, ale jeszcze jeden problem. Pętla się nie wykonuje poprawnie, ale to już chyba sam rozwiąże.
komentarz 26 maja 2015 przez DavidMCPolska Bywalec (2,770 p.)
Yyyy, zniknąła odpowiedź która pomogła na pierwszy problem :(
komentarz 26 maja 2015 przez niezalogowany
edycja 26 maja 2015
char litera[20];
        cout << endl << endl << endl;
        int i;
        for (i = 0; i < 20; i++);
        {
                 litera[i] = _getch();
                cout << litera[i];
        }

proszę :)

usunąłem ponieważ nie zauważyłem ; za pętlą.

EDIT: Chodzi o to aby deklarować zmienną, którą wykorzystamy do powtarzania pętli poza pętlą. Kompilatory kompilują prawidłowo deklarację w pętli ale powinno się to robić poza pętlą.

komentarz 26 maja 2015 przez Adam Knie Mądrala (5,650 p.)
char litera[20];
        cout << endl << endl << endl;
        // czy "int i" będzie w pętli, bądź przed nią - to bez znaczenia
        for (int i = 0; i < 20; i++) // po forach nie ma średników ...
        {
                 litera[i] = _getch();
                cout << litera[i];
        }

Tak to pownno wyglądać.

komentarz 26 maja 2015 przez niezalogowany
komentarz 27 maja 2015 przez niezalogowany
Wydaje mi się, że ważne jest to gdy w pętli mamy jakąś funkcję, która przerywa działanie pętli. Czytałem o tym w dokumentacji wxwidgets(niestety nie mogę tego teraz znaleźć)

Podejrzewam, że dlatego ktoś kto pisał ww dokument zalecił deklarowanie takiej zmiennej poza pętlą.
0 głosów
odpowiedź 27 maja 2015 przez DavidMCPolska Bywalec (2,770 p.)

Dobrze jest :)

komentarz 27 maja 2015 przez DavidMCPolska Bywalec (2,770 p.)

Widać, że jestem początkującym, bo czasami zapominam o tym gdzie się stawia średnik, a gdzie nie.

Podobne pytania

0 głosów
2 odpowiedzi 4,206 wizyt
pytanie zadane 3 grudnia 2017 w C i C++ przez krystian1997 Obywatel (1,020 p.)
0 głosów
0 odpowiedzi 248 wizyt
pytanie zadane 19 kwietnia 2020 w C i C++ przez kuszy Nowicjusz (120 p.)
+1 głos
1 odpowiedź 773 wizyt
pytanie zadane 5 kwietnia 2019 w C i C++ przez mctyskie Początkujący (320 p.)

93,755 zapytań

142,715 odpowiedzi

323,363 komentarzy

63,350 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...