myGully.com

myGully.com (https://mygully.com/index.php)
-   Programmierung (https://mygully.com/forumdisplay.php?f=67)
-   -   C code hilfe (https://mygully.com/showthread.php?t=2148828)

Seooopel 26.10.10 15:34

C code hilfe
 
Was ist an diesem code falsch ?
Ich spiele seit einiger Zeit mit C rum, aber hier komme ich irgendwie nicht weiter :cry: :confused:


/* Taschenrechner*/
#include <stdio.h>
int main (main)

{

/*Variablen*/
int zahl_a;
int zahl_b;
int zahl_c;
int div_rest;
int div_ergebnis;
/*ende der variablen*/
/*Anfang der abfrage*/
printf ("\n willkommen zu sebis 3 Zahlen Taschenrechner");
printf ("\n das einzige was er kann ist 3 Zahlen zusammen zalen");
printf ("\nBitte Zahl a eingeben : ");
scanf ("%d",&zahl_a);
printf ("\nBitte Zahl b eingeben : ");
scanf ("%d",&zahl_b);
printf ("\nBitte Zahl c eingeben : ");
scanf ("%d",&zahl_c);
getchar ();
/*ende der abfrage*/
/*Eignetliche rechnung*/
div_ergebnis = zahl_a + zahl_b + zahl_c;
getchar();
/*ende der rechnung*/
/*Ausgabe des ergenis*/
printf ("\n%d + %d +%d = ",zahl_a, zahl_b, zahl_c);
printf ("%d \n",div_ergebnis, div_rest);
/*Ender der ergebnis-ausgebe*/
getchar ();
}

spartan-b292 26.10.10 17:33

Wie wärs mal mit einer Fehlerbeschreibung?

urga 26.10.10 17:46

und dem code-tag bitte.

germgerm 26.10.10 17:48

Zitat:

Zitat von Seooopel (Beitrag 21448314)
printf ("%d \n",div_ergebnis, div_rest);
}

hier fehlt ein %d.

dein zeilenumbruch ist ein wenig willkürlich ^^

EDIT: oder eher: div_rest gehört weg.

Seooopel 26.10.10 17:51

beim complieren bringt er diese Fehlermeldung:
expected `,' or `;' before '{' token

leider hab ich keine ahnung was ein code-tag ist ;)

Tut mir leid wenn ich so ein Bob bin aber er bringt immer noch die gleiche Fehlermeldung. ^^

urga 26.10.10 18:03

welchen compiler verwendest du denn?
der gcc übersetzt obigen code ohne murren...

Urga@audio /cygdrive/c/Users/Urga
$ gcc c.c

Urga@audio /cygdrive/c/Users/Urga
$ ./a.exe

willkommen zu sebis 3 Zahlen Taschenrechner
das einzige was er kann ist 3 Zahlen zusammen zalen
Bitte Zahl a eingeben : 2

Bitte Zahl b eingeben : 3

Bitte Zahl c eingeben : 5


2 + 3 +5 = 10

und mit code-tag sieht das so aus:
Code:

#include <stdio.h>
int main (main)

{

        /*Variablen*/
        int zahl_a;
        int zahl_b;
        int zahl_c;
        int div_rest;
        int div_ergebnis;
        /*ende der variablen*/
        /*Anfang der abfrage*/
        printf ("\n willkommen zu sebis 3 Zahlen Taschenrechner");
        printf ("\n das einzige was er kann ist 3 Zahlen zusammen zalen");
        printf ("\nBitte Zahl a eingeben : ");
        scanf ("%d",&zahl_a);
        printf ("\nBitte Zahl b eingeben : ");
        scanf ("%d",&zahl_b);
        printf ("\nBitte Zahl c eingeben : ");
        scanf ("%d",&zahl_c);
        getchar ();
        /*ende der abfrage*/
        /*Eignetliche rechnung*/
        div_ergebnis = zahl_a + zahl_b + zahl_c;
        getchar();
        /*ende der rechnung*/
        /*Ausgabe des ergenis*/
        printf ("\n%d + %d +%d = ",zahl_a, zahl_b, zahl_c);
        printf ("%d \n",div_ergebnis, div_rest);
        /*Ender der ergebnis-ausgebe*/
        getchar ();
}


Seooopel 26.10.10 18:05

Das Programm das ich verwende heißt: Dev-c++

vielleicht sind damit ja Probleme bekannt

kannst du mir einen link für das Programm geben das du hernimmst?

urga 26.10.10 18:08

[Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...] aber ich glaub' nicht, daß das dir was nutzt.

PornoPenner 26.10.10 18:09

Wie wärs mit den benötigten Informationen um Dir Hilfe zu leisten?

Betriebssystem?
Compiler?

Oder muss man Dir auch erst alles aus der Nase ziehen?

Seooopel 26.10.10 18:12

hm kennst du noch andere gute c programmierungs programme für windows, ubuntu am besten kostenlos

Seooopel 26.10.10 18:19

Code:

------------------
System Information
------------------
Time of this report: 10/26/2010, 19:17:26
      Machine name: PLAY1OG
  Operating System: Windows XP Professional (5.1, Build 2600) Service Pack 3 (2600.xpsp_sp3_gdr.100427-1636)
          Language: German (Regional Setting: German)
System Manufacturer: Gigabyte Technology Co., Ltd.
      System Model: EP45-DS3
              BIOS: Award Modular BIOS v6.00PG
          Processor: Intel(R) Core(TM)2 Duo CPU    E8400  @ 3.00GHz (2 CPUs)
            Memory: 3326MB RAM
          Page File: 802MB used, 4412MB available
        Windows Dir: C:\WINDOWS
    DirectX Version: DirectX 9.0c (4.09.0000.0904)
DX Setup Parameters: Not found
    DxDiag Version: 5.03.2600.5512 32bit Unicode

zum complier hab ich das gefunden
Compiler: Default
excuting g++.exe

Nette Aufforderung ;), Mr Allessofortkönner

urga 26.10.10 18:38

hehe,

g++ meldet:
$ g++ c.c
c.c:4: error: expected ',' or ';' before '{' token

tja und in zeile 4 steht
int main (main)

und da sollte stehen
Code:

int main (int argc, char** argv)

Seooopel 26.10.10 18:49

cool danke funtzt jetzt ich hab zwar keine ahnung was das heist aber es geht:T

urga 26.10.10 18:53

argc anzahl der argumente an das programm, wobei der programmaufruf selbst das 1ste argument ist.
argv: char* array in dem die argumente stehen.
also
argv[0] 1tes, argv[1] 2tes ....

Seooopel 26.10.10 19:07

hm bei mir hat mein taschenrechner auch ohne das mal funktioniert :|

urga 26.10.10 19:17

argc, argv und envp (jupp, den gibts auch noch) sind optionale parameter an die main() funktion. man kann die auch weglassen. also einfach main().

aber wenn du einen parameter angibts, dann erwartet c++, daß du den auch typisierst (und das ist auch gut so!). c ist da nicht so streng.

wenn du
Code:

int main (main)
schreibst, dann macht c implizit
Code:

int main (int main)
draus. heisst main ist eine funktion die einen parameter namens main vom typen int erwartet.

Seooopel 26.10.10 19:30

das heist ich hätte eigentlich nur so aussehen müssen und der käse wäre gegessen ?
Code:

int main ()
so funktioniert es auch danke für die hilfe :T :T


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:34 Uhr.

Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.