Zum Inhalt springen

Mysql - Integer vergleichen


Empfohlene Beiträge

Geschrieben

Hallo,

ich versuche einen Integer zu vergleichen, aber es kommt die Warnung: "Warnung: Vergleich zwischen Zeiger und Ganzzahl" und es wird bei folgendem code "test3" ausgegeben, obwohl "test1" ausgegeben werden sollte.

Code:

mysql_real_query(my, STR, strlen(STR));

res = mysql_store_result (my);


while ((row = mysql_fetch_row (res)) != NULL) {

  if (row[5] == 1) {

      printf ("test1");

    }

    else if (row[5] == 2) {

      printf ("test2");

    }

    else

      printf ("test3");

}
In dieser Mysql Spalte steht die Zahl 1 und der typ der Spalte ist Int(1). Wenn ich über
printf ((char *) row[5]);
das ausgeben lasse, gibt er die 1 aus. Aber wenn ich die Abfragen entsprechend anpasse:
mysql_real_query(my, STR, strlen(STR));

res = mysql_store_result (my);


while ((row = mysql_fetch_row (res)) != NULL) {

  if ((char *) row[5] == "1") {

      printf ("test1");

    }

    else if ((char *) row[5] == "2") {

      printf ("test2");

    }

    else

      printf ("test3");

}

kommt immer noch "test3" raus (aber ohne Warnung).

Woran kann dies liegen?

Geschrieben

ups

Ich danke dir. Das kommt davon, wenn man nur ein bisschen C kann und dann noch mit anderen Programmier-/Skriptsprachen zu tun hat.

Geschrieben

Hallo,

alternativ kannst Du natürlich auch mittels "atoi" in einen Integer konvertieren:

mysql_real_query(my, STR, strlen(STR));

res = mysql_store_result (my);


while ((row = mysql_fetch_row (res)) != NULL) {

  if (atoi(row[5]) == 1) {

      printf ("test1");

    }

    else if (atoi(row[5]) == 2) {

      printf ("test2");

    }

    else

      printf ("test3");

}

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...