Forum huvudsida -> Programmering -> Noob fråga.
Sidor: 1
lillme | 10:50 - 5:e Januari 2007 | Post #1 | |
Medlem Inlägg: 13 Skicka PM |
Jag har fått detta fel väldigt många gånger på senaste. Började koda c++ för några dagar sedan, allt har gått bra. Men ser verkligen inte felet i detta Eftersom jag skrev av utifrån blinkenlights guider av c++ . #include <iostream> using std::cout; using std::cin; void kvadrat(int &tal); void kvadrat(int &tal) { tal = tal
} int main () { cout << "Skriv in ett tal:n"; cin >> tal; kvadrat(tal); cout << "Kvadraten av detta tal blir: " << tal <<" !n"; system("PAUSE"); return 0; } Raden som lyser rött i Dev C++ är följande. cin >> tal; Skumt tycker jag, det blev även så här när jag skulle testa köra egna funktioner. ------------------------- Ingen signatur! Senast redigerad 11:02 - 5:e Januari 2007 |
Nissebosselasse | 10:55 - 5:e Januari 2007 | Post #2 | |
Medlem Inlägg: 490 Skicka PM |
Först: när du postar kod, lägg det mellan [ code] och [ /code] (ta bort mellanslaget). Det ser ut som om det har blivit något fel när inlägget visas... I funktionen main definierar du aldrig variabeln "tal" (d.v.s., du reserverar aldrig utrymme för den, så att kompilatorn vet vart den ska lägga dess värde). I början av main, lägg in: int tal; ...vilket betyder "definiera en variabel vid namn tal, och gör det till ett heltal". När Dev-C++ lyser upp en rad med rött, får du något felmeddelande? Det underlättar när andra ska hjälpa dig om du skriver ut det. Annars är det bara att kämpa på ------------------------- http://pushingcows.se Gula Nallen |
lillme | 11:01 - 5:e Januari 2007 | Post #3 | |
Medlem Inlägg: 13 Skicka PM |
Citat av Nissebosselasse: Först: när du postar kod, lägg det mellan [ code] och [ /code] (ta bort mellanslaget). Det ser ut som om det har blivit något fel när inlägget visas... I funktionen main definierar du aldrig variabeln "tal" (d.v.s., du reserverar aldrig utrymme för den, så att kompilatorn vet vart den ska lägga dess värde). I början av main, lägg in: int tal; ...vilket betyder "definiera en variabel vid namn tal, och gör det till ett heltal". När Dev-C++ lyser upp en rad med rött, får du något felmeddelande? Det underlättar när andra ska hjälpa dig om du skriver ut det. Annars är det bara att kämpa på Okej, förlåt för det. Jag trodde det bara gick under Vbulletin forumen. Hur som helst. Vart skulle jag lägga int tal; Jag förstod inte riktigt det. Okej, jag ska kolla vilket felmeddelande jag får. 18 C:\Dev-Cpp\funkis.cpp `tal' undeclared (first use this function) Jag tror det är det som är felmeddelanden när man felsöker. Tacksam för hjälp! ------------------------- Ingen signatur! |
Nissebosselasse | 11:04 - 5:e Januari 2007 | Post #4 | |
Medlem Inlägg: 490 Skicka PM |
Jag sa att du skulle lägga den först i funktionen main, men det framgick kanske inte... int main () { // Reserverar utrymme för variabeln int tal; // Nu kan vi använda den! cout << "Skriv in ett tal: "; cin >> tal; } ------------------------- http://pushingcows.se Gula Nallen |
lillme | 11:09 - 5:e Januari 2007 | Post #5 | |
Medlem Inlägg: 13 Skicka PM |
Citat av Nissebosselasse: Jag sa att du skulle lägga den först i funktionen main, men det framgick kanske inte... int main () { // Reserverar utrymme för variabeln int tal; // Nu kan vi använda den! cout << "Skriv in ett tal: "; cin >> tal; } Jodå, det framgick Men osäker nybörjade som jag är trodde jag du menade int main (int tal); { Edit. Det fungerade nu, tackar! Om det dyker upp någon mera fråga, kan jag ta det i samma tråd då? ------------------------- Ingen signatur! Senast redigerad 11:10 - 5:e Januari 2007 |
Nissebosselasse | 11:11 - 5:e Januari 2007 | Post #6 | |
Medlem Inlägg: 490 Skicka PM |
Aha! Fast då hade jag sagt att du skulle lagt till tal som en heltalsparameter till funktionen main... ------------------------- http://pushingcows.se Gula Nallen |
lillme | 11:16 - 5:e Januari 2007 | Post #7 | |
Medlem Inlägg: 13 Skicka PM |
Citat av Nissebosselasse: Aha! Fast då hade jag sagt att du skulle lagt till tal som en heltalsparameter till funktionen main... Okej ------------------------- Ingen signatur! |
lillme | 12:07 - 5:e Januari 2007 | Post #8 | |
Medlem Inlägg: 13 Skicka PM |
Jahapp. Detta vart ju fel såklart. #include<iostream> #include<ctime> using std::cout; using std::cin; using std::srand; using std::rand; int main () { srand(time(0)); int iSlumptal; iSlumptal = rand() / (RAND_MAX / 6 + 1) + 1; cout << "Detta är ett slumpat tal: " << iSlumptal; cin.get() system("PAUSE"); return 0; } Följande lyser rött! system("PAUSE"); return 0; ------------------------- Ingen signatur! |
tobbez | 12:24 - 5:e Januari 2007 | Post #9 | |
Medlem Inlägg: 364 Skicka PM |
Du har glömt ett ; efter cin.get() som är precis före. Dessutom kan det vara bra att bara ha en sats per rad, brukar vara lättare att se vad som blivit fel då. Ex: system("PAUSE"); return 0; istället för system("PAUSE"); return 0; även om det inte har så stor betydelse i just det här fallet |
Kanye | 20:59 - 5:e Januari 2007 | Post #10 | |
Medlem Inlägg: 130 Skicka PM |
Du bör nog läsa en kurs i hur man skriver snygg och lätt läst kod, ett annat tips vore om du kommenterade alltihop för minnets skull. ------------------------- Motiverar? |
Sidor: 1
Forum huvudsida -> Programmering -> Noob fråga.
Du får inte posta i den här tråden | Till toppen
Datum
2024-05-03 03:35
Vecka: 18
Besökare
Inloggade: 0
Gäster: 605
Medlemmar
Medlemmar: 53576
Forum
Senaste inlägget: HAHA MÄNNISKAN LEVER ÄN (13:45 - 18:e Januari 2019, av Hetzz)
Wiki
Senaste ändringen:
3D (rev: 1, tid: 09:40 - 13:e November 2015)
Chatt
#blinkenlights @ Libera.Chat
Gratis shellkonton för IRC, webbsidor mm.