Wie compilliert man ein C-Programm

  • geschlossen
  • C

  • reny
  • 1814 Aufrufe 9 Antworten

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Wie compilliert man ein C-Programm

    Hi ich habe mit dem Visual C++ 2008 Express Edition eine datei mithilfe von C eingegeben und möchte nun wissen wie man es ausführen kann.
    reny
    xnuıl feel free
    ǝlddɐ feel different
    sʍopuıʍ feel bad
  • man kann nicht einmal debuggen und ich habe bereits in den symbolleisten und in der hilfe ein bisschen gesucht

    hat sich erledigt doch nun folgt ein anderes prob.
    Kann mir vllt. jemand sagen was falsch ist.
    Hier der Quelltext:

    C-Quellcode

    1. #include <stdio.h>
    2. #include <stdafx.h>
    3. main(){
    4. int zahl;
    5. printf("\nBitte Zahl eingeben ('0' fuer Ende):");
    6. scanf("%i",&zahl);
    7. while(zahl !=0){
    8. printf("%3i hoch 2= %4i\n",zahl.zahl*zahl);
    9. printf("\nBitte Zahl eingeben ('0' fuer Ende) :");
    10. scanf("%i".&zahl);
    11. }
    12. }
    Alles anzeigen


    Hier die Log-Datei:

    Quellcode

    1. Buildprotokoll Erstellen wurde gestartet: Projekt: "while", Konfiguration: "Debug|Win32"
    2. Befehlszeilen Die temporäre Datei "d:\Dokumente und Einstellungen\Christopher\Eigene Dateien\Visual Studio 2008\Projects\while\while\Debug\RSP00000F420280.rsp" wird erstellt. Inhalt:
    3. [
    4. /Od /D 'WIN32' /D '_DEBUG' /D '_UNICODE' /D 'UNICODE' /FD /EHa /MDd /Yu'stdafx.h' /Fp'Debug\while.pch' /Fo'Debug\\' /Fd'Debug\vc90.pdb' /W3 /c /Zi /clr /TP /FU 'd:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll' /FU 'd:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll' /FU 'd:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.XML.dll'
    5. '.\while.cpp'
    6. ]Erstellen der Befehlszeile "cl.exe @"d:\Dokumente und Einstellungen\Christopher\Eigene Dateien\Visual Studio 2008\Projects\while\while\Debug\RSP00000F420280.rsp" /nologo /errorReport:prompt" Ausgabefenster Kompilieren...
    7. while.cpp
    8. .\while.cpp(1) : warning C4627: "#include ": Wird bei der Suche nach Verwendung des vorkompilierten Headers übersprungen.
    9. "stdafx.h" Direktive hinzufügen oder vorkompilierten Header erneut erstellen
    10. .\while.cpp(4) : error C4430: Fehlender Typspezifizierer - int wird angenommen. Hinweis: "default-int" wird von C++ nicht unterstützt.
    11. .\while.cpp(6) : error C3861: "printf": Bezeichner wurde nicht gefunden.
    12. .\while.cpp(7) : error C3861: "scanf": Bezeichner wurde nicht gefunden.
    13. .\while.cpp(9) : error C2039: 'zahl': Ist kein Element von 'System::Int32'
    14. d:\windows\microsoft.net\framework\v2.0.50727\mscorlib.dll: Siehe Deklaration von 'System::Int32'
    15. .\while.cpp(9) : error C3861: "printf": Bezeichner wurde nicht gefunden.
    16. .\while.cpp(10) : error C3861: "printf": Bezeichner wurde nicht gefunden.
    17. .\while.cpp(11) : error C2059: Syntaxfehler: '&'
    18. Ergebnisse Das Buildprotokoll wurde unter "file://d:\Dokumente und Einstellungen\Christopher\Eigene Dateien\Visual Studio 2008\Projects\while\while\Debug\BuildLog.htm" gespeichert.
    19. while - 7 Fehler, 1 Warnung(en)
    Alles anzeigen
    xnu&#305;l feel free
    &#477;ldd&#592; feel different
    s&#653;opu&#305;&#653; feel bad

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von Broken Sword ()

  • Das ist ne C Datei und keine C++ Datei, also muss die Endung .c sein und nicht .cpp.

    Btw: Punkt ist nicht gleich Komma...

    Quellcode

    1. #include <stdio.h>
    2. int main(int args, char** argv){
    3. int zahl;
    4. printf("\nBitte Zahl eingeben ('0' fuer Ende):");
    5. scanf("%i",&zahl);
    6. while (zahl !=0) {
    7. printf("%i hoch 2= %i\n",zahl,zahl*zahl);
    8. printf("\nBitte Zahl eingeben ('0' fuer Ende) :");
    9. scanf("%i",&zahl);
    10. }
    11. return 0;
    12. }
    Alles anzeigen
    Wo ist der Discord Server

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Skyte ()

  • @ Skyte,

    da reny mit der VS 2008 EE arbeitet, wird ihm die .cpp-Endung vorgegeben.
    Damit hat es also nichts zu tun.

    Allerdings der "Punkt" in der printf() und scanf()-Funktion ist schon fatall.

    @reny
    Schalte die Parameterinformation unter Extra-Optionen-TextEditor-C/C++-Algemein ein, dann bekommst Du automatisch die Funktions-Parameter angezeigt; vorausgesetzt Du hast die entsprechenden Header-Files eingebunden!!

    Verwende für die main()-Funktion zumindest den Rückgabetyp void, das ist die erste Fehlerzeile!!
    Ohne explizieten C-Schalter wird so die main()-Funktion vom Compiler nicht unterstüzt. Der C++-Compiler benötigt immer einen Rückgabetyp für Funktionen!!
    Und nimm die '#include <stdafx.h>' heraus. Die brauchst Du hier nicht!!

    Gruß,

    zeroNULL

    Dieser Beitrag wurde bereits 6 mal editiert, zuletzt von zeroNULL ()

  • Der code von Skyte zeigt dir schon die berichtigte Version deines Programms... "void" als Rückgabetyp der mainfunktion anzugeben ist zwar in der tat besser als keiner ( void main () { .. } ) sollte aber troztdem vermieden werden, weil ein numerischer Rückgabewert zu einem ausführbaren Programm gehört.

    also:

    PHP-Quellcode

    1. int main(..) {
    2. // Dein code hier
    3. return 0;
    4. }

    statt

    PHP-Quellcode

    1. main(..) {
    2. // Dein code hier
    3. }
    [SIZE="1"]i'm a signature virus. copy me into your signature to help me spread. - smart questions[/SIZE]