ubuntuusers.de

KDevelop Frage zu printf und scanf

Status: Ungelöst | Ubuntu-Version: Ubuntu 10.04 (Lucid Lynx)
Antworten |

Shadowwalker

Anmeldungsdatum:
23. Januar 2009

Beiträge: Zähle...

Hi,

bin noch relativ neu in der Linux Welt und versuche mich gerade an KDevelop. Ich weiss das folgender Code in Visual C...... funktioniert, leider krieg ich das mit KDevelop nicht hin und bräuchte da etwas hilfe.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>

void main()

{
  double zahl1 = 0.0;
  double zahl2 = 0.0;
  double ergebnis = 0.0;
  
  printf("Bitte geben Sie die erste Zahl ein:\n");
  scanf("%lg", &zahl1);
  
  printf("Bitte geben Sie die zweite Zahl ein:\n");
  scanf("%lg", &zahl2);
  
  ergebnis = zahl1 + zahl2;
  
  printf("%lg", ergebnis);
  
}

er bringt mir immer diese beiden Fehler:

Deklaration nicht gefunden:printf

Deklaration nicht gefunden:scanf

hab schon was im Forum und bei Google gesucht, leider nix gefunden

Bearbeitet von redknight:

Codeblock korrigiert

Lunar

Anmeldungsdatum:
17. März 2006

Beiträge: 5792

Formatiere erst mal Deinen Beitrag korrekt, und zeige die exakte Ausgabe des Compilers.

Shadowwalker

(Themenstarter)

Anmeldungsdatum:
23. Januar 2009

Beiträge: 13

danke euch beiden 👍

hab noch ein Screenshot gemacht, wird bestimmt besser helfen

Bilder

Marc_BlackJack_Rintsch Team-Icon

Ehemalige
Avatar von Marc_BlackJack_Rintsch

Anmeldungsdatum:
16. Juni 2006

Beiträge: 4686

Wohnort: Berlin

@Shadowwalker: Wenn Du C++ schreibst, solltest Du auch wirklich C++ schreiben. Der Header heisst dort nicht stdio.h sondern cstdio und die Funktionen sind im Namensraum std. Den musst Du entweder explizit angeben oder ein using namespace std; verwenden.

Und man sollte wenn man C++ schreibt möglichst auf C-Idiome verzichten. C++ hat andere, eigene Möglichkeiten der Ein- und Ausgabe, die man vorziehen sollte.

Shadowwalker

(Themenstarter)

Anmeldungsdatum:
23. Januar 2009

Beiträge: 13

Marc 'BlackJack' Rintsch schrieb:

@Shadowwalker: Wenn Du C++ schreibst, solltest Du auch wirklich C++ schreiben. Der Header heisst dort nicht stdio.h sondern cstdio und die Funktionen sind im Namensraum std. Den musst Du entweder explizit angeben oder ein using namespace std; verwenden.

Und man sollte wenn man C++ schreibt möglichst auf C-Idiome verzichten. C++ hat andere, eigene Möglichkeiten der Ein- und Ausgabe, die man vorziehen sollte.

deine Antwort bringt mich erstmal nicht weiter, da ich den Stoff im moment in der Schule durchnehme und gerade erst damit angefangen haben, wie gesagt, in visual c..... (an meinem anderen pc) klappt das ganze, vielleicht reich visual c... auch die oben aufgeführte eingabe

Marc_BlackJack_Rintsch Team-Icon

Ehemalige
Avatar von Marc_BlackJack_Rintsch

Anmeldungsdatum:
16. Juni 2006

Beiträge: 4686

Wohnort: Berlin

@Shadowwalker: Dann benutz doch Visual C wenn der auch solchen nicht-standardkonformen Quelltext übersetzt. Wenn Du einen Compiler verwenden möchtest, der sich an den Standard hält, musst Du halt auch den Quelltext so schreiben, dass er mit jedem Compiler und nicht nur mit dem VC übersetzbar ist.

Und wieso hilft meine Antwort nicht weiter? Ändere den Namen des Headers enstprechend und setze die using…-Zeile hinter die Importe und gut ist.

linopolus

Avatar von linopolus

Anmeldungsdatum:
21. Juli 2008

Beiträge: 986

Wohnort: Ottendorf-Okrilla

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
include <iostream>


void main()

{
  double zahl1 = 0.0;
  double zahl2 = 0.0;
  double ergebnis = 0.0;
  
  std::cout << "Bitte geben Sie die erste Zahl ein:\n";
  std::cin >> zahl1;
  
  std::cout << "Bitte geben Sie die zweite Zahl ein:\n";
  std::cin >> zahl2;
  
  ergebnis = zahl1 + zahl2;
  
  std::cout << ergebnis;
  
}

So müsste es stimmen.

Keine Garantie!

EDIT: So müsste es stimmen, wenn es denn wirklich C++ ist und kein C

YEPHENAS

Anmeldungsdatum:
8. Juni 2009

Beiträge: 352

Marc 'BlackJack' Rintsch schrieb:

@Shadowwalker: Wenn Du C++ schreibst, solltest Du auch wirklich C++ schreiben.

Wo schreibt er denn, dass er C++ programmieren will? Er spricht nur von Visual C, und der Code ist korrektes C. Also sagt ihm lieber, wie man unter KDevelop den C-Compiler auswählt.

Marc_BlackJack_Rintsch Team-Icon

Ehemalige
Avatar von Marc_BlackJack_Rintsch

Anmeldungsdatum:
16. Juni 2006

Beiträge: 4686

Wohnort: Berlin

@YEPHENAS: Er importiert iostream und hat die Datei main.cpp genannt. Sieht man im Screenshot. Im ersten Beitrag hat er das allerdings unterschlagen.

@Shadowwalker: Du kannst alternativ natürlich die Datei auch in main.c umbennenen, den sinnfreien Import von iostream rauswerfen und müsstest die Signatur der main()-Funktion dann in int main(void) ändern und eine 0 am Ende der Funktion zurückgeben. Dann kompiliert das auch als C-Programm.

YEPHENAS

Anmeldungsdatum:
8. Juni 2009

Beiträge: 352

Marc 'BlackJack' Rintsch schrieb:

@YEPHENAS: Er importiert iostream und hat die Datei main.cpp genannt. Sieht man im Screenshot. Im ersten Beitrag hat er das allerdings unterschlagen.

Ah, den Screenshot hab ich mir nicht angeschaut. Vielleicht sollte er uns dann erstmal aufklären, ob er nun C oder C++ will, bzw. welches von beiden er in der Schule lernt.

Shadowwalker

(Themenstarter)

Anmeldungsdatum:
23. Januar 2009

Beiträge: 13

so wieder da,

hab mir gerade nochmal die Unterlagen aus der Schule angeschaut, laut denen ist das reine C programmierung

wo krieg ich diese C Vorlagen her ? bin gerade am suchen

YEPHENAS

Anmeldungsdatum:
8. Juni 2009

Beiträge: 352

Shadowwalker schrieb:

so wieder da,

hab mir gerade nochmal die Unterlagen aus der Schule angeschaut, laut denen ist das reine C programmierung

wo krieg ich diese C Vorlagen her ? bin gerade am suchen

Vorlagen? BlackJack hat doch schon geschrieben, was du tun musst:

Marc 'BlackJack' Rintsch schrieb:

@Shadowwalker: Du kannst alternativ natürlich die Datei auch in main.c umbennenen, den sinnfreien Import von iostream rauswerfen und müsstest die Signatur der main()-Funktion dann in int main(void) ändern und eine 0 am Ende der Funktion zurückgeben. Dann kompiliert das auch als C-Programm.

Shadowwalker

(Themenstarter)

Anmeldungsdatum:
23. Januar 2009

Beiträge: 13

meine diese vorlagen wie auf dem bild, bei mir kann ich in dem fenster nur C++ vorlagen asuwählen

Bilder

Yoschi

Anmeldungsdatum:
11. April 2009

Beiträge: 454

Wieso ?

Die Vorlage "C/Simple Hello World Program" ist doch C. Wenn du die verwendet hast und KDevelop trotzdem eine main.cpp erstellt und auch g++ verwendet, liegt das nicht an dir...
Oder lässt sich die Vorlage erst gar nicht auswählen ?

Yoschi

Marc_BlackJack_Rintsch Team-Icon

Ehemalige
Avatar von Marc_BlackJack_Rintsch

Anmeldungsdatum:
16. Juni 2006

Beiträge: 4686

Wohnort: Berlin

@Yoschi: Der Screenshot ist das was Shadowwalker gerne hätte, nicht das was er wirklich sieht. Das ist jedenfalls ein ganz anderes Theme als das in dem Screenshot von seinem KDevelop aus dem letzten Screenshot.

Antworten |