Zum Inhalt springen

C - Probleme mit Strings, Casts & Co


aoe

Empfohlene Beiträge

#include<ctype.h>

#include<stdio.h>


char eingabefeld[30];

double zahl;

double puffer = 0;


do

{


    scanf("%s", &eingabefeld[]);


    if (isdigit(eingabefeld[]) == true);

    {


        zahl = (double)eingabefeld[]; // Typ Umwandlung in double


    }


    else


        switch (eingabefeld[])

        {


        // Test


        case'+':


            puffer += zahl;


            break;


        }

    printf("%lf", puffer); // Test Ausgabe



}

while (getchar() != 'b');


}

Wenn ich das Programm übersetzen möchte, meldet CodeBlocks 3 Fehler, die ich nicht ganz verstehe. :confused:

tzi\Desktop\test.c|8|error: expected unqualified-id before "do"|

tzi\Desktop\test.c|38|error: expected unqualified-id before "while"|

tzi\Desktop\test.c|40|error: expected declaration before '}' token|

||=== Build finished: 3 errors, 0 warnings ===|

Aufgabe des Programmes sollte sein:

Eingegebene Zeichen und Zahlen aussortieren (in Opperatoren und Zahlen) und dann auswerten. Mehr nicht! Ich brauch dieses System um einen guten Taschenrechner für die Konsole zu schreiben. :(

Link zu diesem Kommentar
Auf anderen Seiten teilen

#include<ctype.h>

#include<stdio.h>


[B]int main (void)

{[/B]


    char eingabefeld[30];

    double zahl;

    double puffer = 0;


    do

    {


        scanf("%s", &eingabefeld[]);


        if (isdigit(eingabefeld[]) == true);

        {


            zahl = (double)eingabefeld[]; // Typ Umwandlung in double


        }


        else



            switch (eingabefeld[])

            {


                // Test


            case'+':


                puffer += zahl;


                break;


            }

        printf("%lf", puffer); // Test Ausgabe



    }

    while (getchar() != 'b');


[B]}[/B]

CodeBlocks meldet jetzt mehr Fehler!

Desktop\test.c||In function `int main()':|

tzi\Desktop\test.c|14|error: expected primary-expression before ']' token|

tzi\Desktop\test.c|16|error: expected primary-expression before ']' token|

tzi\Desktop\test.c|19|error: expected primary-expression before "double"|

tzi\Desktop\test.c|19|error: expected `)' before "double"|

tzi\Desktop\test.c|23|error: expected primary-expression before "else"|

tzi\Desktop\test.c|23|error: expected `;' before "else"|

||=== Build finished: 6 errors, 0 warnings ===|

Link zu diesem Kommentar
Auf anderen Seiten teilen

Zeile 14:

Die eckigen Klammern müssen weg. Überhaupt darfst du eckige Klammern ohne "Inhalt" nur bei der Deklaration eines Arrays benutzen.

Zeile 16:

isdigit kann nur einzelne Zeichen prüfen, kein ganzes Array auf einmal.

Und das Semikolon am Ende muss weg.

Zeile 19:

Diese "Typumwandlung" ist Unsinn. Schau dir mal die Funktion atof an.

Zeile 26:

switch funktioniert nicht mit Zeichenketten.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Zeile 16:

du kannst in C nicht auf == true vergleichen (außer du hast true irrgendwo definiert)

da in C keine boolischen Variablen vorgesehn sind.

d.h. du müsstest if (isdigit(eingabefeld) != 0 ) oder if (isdigit(eingabefeld)) schreiben

Zeile 23:

Fehlen bei deinem else die geschweiften Klammern

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

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...