Forum: c++ problem med if()

Forum huvudsida -> Programmering -> c++ problem med if()

Sidor: 1

Till botten

Asetelint 12:54 - 23:e Augusti 2008 | Post #1
Medlem
Inlägg: 22


Skicka PM
Jag har fått lite problem när jag använder mig utav if().
Jag har gjort ett litet program där jag bara ska skriva glosor(hej,hi); i main för att få datorn att fråga efter ett ord. ex.

vad är hej på engelska?
hi
rätt!


om det är fel ska den förstås säga fel eller något.
problemet är att den alltid säger fel.
koden:
  1. int glosor(char ord_sv[20],char ord_en[20])
  2. {
  3. char ord_en_cin[20];
  4. cout <<ord_sv<<" ";
  5. cin.getline(ord_en_cin,20);
  6. if(ord_en_cin==ord_en)
  7. {
  8. cout <<"nrätt!n";
  9. }
  10. else
  11. {
  12. cout <<"nfel!n";
  13. }
  14. return(0);
  15. }

(förstås har jag med main men jag tycker att det e onödigt att ta med den här). Jag skriver som sagt glosor(hej,hi); i main. använder using namespace std;.

-------------------------
du kan ju alltid hjälpa mig på MyMiniCity
http://the-cityofmmc.myminicity.com/



Slash 13:04 - 23:e Augusti 2008 | Post #2
Medlem
Inlägg: 141


Skicka PM
Problemet ser ut att vara rad 6 där du jämför en char-pekare med en annan char-pekare. Det som inte blir som du tänkt dig är att du jämför pekarna med varandra och inte det de faktiskt pekar på.

Det allra bästa här är ju att använda string-klassen i standardbiblioteket:
  1. #include <string>
  2. using std::string;
  3.  
  4. int glosor(string ord_sv, string ord_en)
  5. {
  6. string ord_en_cin;
  7. cin.getline(ord_en_cin);
  8.  
  9. if (ord_en_cin == ord_en) {
  10. cout << "rätt";
  11. } else {
  12. cout << "fel";
  13. }
  14. return 0;
  15. }


Eller om du av religösa skäl inte kan använda dig av string-klassen, kör med strcmp.

  1. #include <cstring>
  2. /*...*/
  3. if (strcmp(ord_en_cin, ord_en) == 0)
  4. {
  5. cout << "rätt";
  6. }
  7. else
  8. {
  9. cout << "fel";
  10. }
  11. /*...*/


Eventuella kompileringsfel får du lista ut självSmiley

-------------------------
Ingen sigantur!

Senast redigerad 13:06 - 23:e Augusti 2008


Asetelint 13:15 - 23:e Augusti 2008 | Post #3
Medlem
Inlägg: 22


Skicka PM

Eventuella kompileringsfel får du lista ut självSmiley

Jo tack lite kompileringsfel vart det men nu funkar det.
Tack så hemskt mycket

-------------------------
du kan ju alltid hjälpa mig på MyMiniCity
http://the-cityofmmc.myminicity.com/



Sidor: 1

Forum huvudsida -> Programmering -> c++ problem med if()
Atom feed

Du får inte posta i den här tråden | Till toppen