ubuntuusers.de

gcc: false nicht deklariert

Status: Ungelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

sebii

Avatar von sebii

Anmeldungsdatum:
20. Februar 2007

Beiträge: 145

Wohnort: Spreitenbach

N'Abend

Hoffe das ich niemanden mit meinen Anfänger Posts nerve 🙄 . Habe nur eine Frage habe mir GTK Wikibooks angeschaut. Das Hallo Welt Gtk Programm konnte ich ganz gut mit dem Befehl

gcc -Wall -g helloworld.c -o helloworld `pkg-config --cflags gtk+-2.0` \
`pkg-config --libs gtk+-2.0`

ausführen. Nur kann ich das bei den Boxen nicht mehr. Dort kommt der Fehler das 'false' nich deklariert worden seie.

Wikibook GTK http://de.wikibooks.org/wiki/GTK/_Boxen

hat jemand ne Lösung?
Danke --sebi--

Moderiert von user unknown:

Wieder ein Problem ist ein denkbar schlechter Titel. Bitte lies auch Verwaltung/Moderatoren-Team/Richtig_Fragen
Danke

Hello_World

Anmeldungsdatum:
13. Juni 2006

Beiträge: 3620

Wer das geschrieben hat, verwendet offensichtlich einen C++-Compiler. In C sollte

#include <stdbool.h>

das Problem lösen.

sebii

(Themenstarter)
Avatar von sebii

Anmeldungsdatum:
20. Februar 2007

Beiträge: 145

Wohnort: Spreitenbach

Danke für deine Geduld, mit Anfängern ists nicht leicht .... 😀

Grüsse sebi

mreczio

Avatar von mreczio

Anmeldungsdatum:
1. Mai 2006

Beiträge: 1820

Wohnort: Essen

Bitte gebe doch beim nächsten mal einen etwas aussagekräftigeren Titel für dein Problem an.
Solche Titel wie du ihn benutzt, werden von manchen Usern hier ignoriert und somit verringert sich die Chance für eine Lösung.

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17625

Wohnort: Berlin

mreczio hat geschrieben:

Bitte gebe doch beim nächsten mal einen etwas aussagekräftigeren Titel für dein Problem an.

Yep. Hab's moderiert.

sebii

(Themenstarter)
Avatar von sebii

Anmeldungsdatum:
20. Februar 2007

Beiträge: 145

Wohnort: Spreitenbach

Kann ich mich hier gleich mit einem zweitem Problem melden oder sollte ich eine neue Runde dafür starten, falls ja moderiert mich bitte.

Das Problem ist bei der Programmierung wie es im Wikibook steht kommt ein Fehler zu Stande. http://de.wikibooks.org/wiki/GTK/_Ereignisse Wenn ich den Befehl :

g++ -Wall -g Event1.c -o Event1 `pkg-config --cflags gtk+-2.0` \
`pkg-config --libs gtk+-2.0`

eingebe kommt die Fehlermeldung:

Event1.c: In function »int handlerfunktion(GtkButton*, void*)«:
Event1.c:25: Warnung: zu viele Argumente für Format
Event1.c:31: Warnung: Kontrollfluss erreicht Ende einer Nicht-void-Funktion


http://ubuntuusers.de/paste/103832/

Habe keine Ahnung was geschehen ist, hat einer ne Idee?
Danke --sebi--

Hello_World

Anmeldungsdatum:
13. Juni 2006

Beiträge: 3620

Den g++ zum kompilieren von C-Code zu verwenden ist eine ganz schlechte Idee.

Außerdem ist das Wikibook, das Du Dir gesucht hast, Dreck, die Warnings liegen nämlich an ziemlich dummen Fehlern in deren Quelltext.

Und nochwas: Die Zeilennummern in Deinen Fehlermeldungen stimmen nicht mit denen aus den Beispielen überein. Wenn Du Änderungen am Quelltext vornimmst, dann poste das nächste mal bitte Deinen Quelltext.

sebii

(Themenstarter)
Avatar von sebii

Anmeldungsdatum:
20. Februar 2007

Beiträge: 145

Wohnort: Spreitenbach

Gerne hier ist er, Warum nicht mit g++ ich habe mein Problem so in den Griff bekommen und anstatt gcc g++ eingegeben, und musste keine Änderungen am Quelltext vornehmen ☺ .
http://ubuntuusers.de/paste/103860/

Hello_World

Anmeldungsdatum:
13. Juni 2006

Beiträge: 3620

--sebi-- hat geschrieben:

Gerne hier ist er, Warum nicht mit g++

Weil C und C++ zwei verschiedene Sprachen sind. Entscheide Dich, was Du lernen willst und lerne dann eine Sache richtig. Wenn Du Dich für C++ entscheidest, dann benutze auch die C++-Bindings namens gtkmm. Wenn Du Dich für C entscheidest, dann verwende nicht false, sondern 0, da es in C89 keinen boolean-Typen gibt (Auch wenn manche Leute es für eine gute Idee halten, so zu tun als gäbe es sie. In C99 gibt es zwar einen boolean-Typ, aber gtk verwendet diesen nicht, daher ist es sinnlos, eine bool-Variable an eine gtk-Funktion zu übergeben).
Aber wie gesagt, mit dem von Dir genannten Wikibook wird das eh nichts, das ist nämlich Grütze.

Um die Warnings zu eliminieren, entferne das NULL in Zeile 25 und ändere den Rückgabetyp von handlerfunktion zu void.

Antworten |