C-Tutorial: Funktionen und Datentyp

Schnelle objektorientierte, kompilierende Programmiersprache.
Antworten
tauberheli
Beiträge: 16
Registriert: Di Apr 27, 2010 3:47 pm

C-Tutorial: Funktionen und Datentyp

Beitrag von tauberheli » Di Sep 21, 2010 8:02 pm

Hallo,

habe ich richtig verstanden, dass die Variable, die man an eine Funktion übergibt und die von der Funktion wieder zurückgegeben wird, nur vom selben Datentyp sein kann?

Anders gefragt: Gibt es eine Lösung dafür, eine char-Variable an eine Funktion zu übergeben und einen int-Wert zurückzubekommen?

Danke

Benutzeravatar
cloidnerux
Moderator
Beiträge: 3125
Registriert: Fr Sep 26, 2008 4:37 pm
Wohnort: Ram (Gibts wirklich)

Re: C-Tutorial: Funktionen und Datentyp

Beitrag von cloidnerux » Di Sep 21, 2010 8:05 pm

habe ich richtig verstanden, dass die Variable, die man an eine Funktion übergibt und die von der Funktion wieder zurückgegeben wird, nur vom selben Datentyp sein kann?
Nein.
Anders gefragt: Gibt es eine Lösung dafür, eine char-Variable an eine Funktion zu übergeben und einen int-Wert zurückzubekommen?
http://www.proggen.org/doku.php?id=c:func:start
Schau mal unter Prototypen.
Redundanz macht wiederholen unnötig.
quod erat expectandum

tauberheli
Beiträge: 16
Registriert: Di Apr 27, 2010 3:47 pm

Re: C-Tutorial: Funktionen und Datentyp

Beitrag von tauberheli » Di Sep 21, 2010 9:35 pm

Danke! Haut jetzt hin.

Noch eine Frage:
Habe mehrmals versucht ein Array an eine Funktion zu übergeben und ein anderes Array zurückzubekommen. Leider erfolglos. Bevor ich noch einen Versuch unternehme:

Kann man überhaupt Arrays an eine Funktion übergeben oder liegt der Fehler möglicherweise darin, dass ich mit den Zeigern falsch gearbeitet habe?

nufan
Wiki-Moderator
Beiträge: 2558
Registriert: Sa Jul 05, 2008 3:21 pm

Re: C-Tutorial: Funktionen und Datentyp

Beitrag von nufan » Di Sep 21, 2010 9:42 pm

tauberheli hat geschrieben:Kann man überhaupt Arrays an eine Funktion übergeben oder liegt der Fehler möglicherweise darin, dass ich mit den Zeigern falsch gearbeitet habe?
Natürlich kannst du auch Arrays an Funktionen übergeben:
http://www.proggen.org/doku.php?id=c:fu ... _parameter
Wenn du einen Array zurückgibst, musst du dessen Speicher dynamisch anfordern (malloc) und nachher wieder freigeben (free).

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8862
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: C-Tutorial: Funktionen und Datentyp

Beitrag von Xin » Di Sep 21, 2010 11:16 pm

tauberheli hat geschrieben:Habe mehrmals versucht ein Array an eine Funktion zu übergeben und ein anderes Array zurückzubekommen. Leider erfolglos. Bevor ich noch einen Versuch unternehme:

Kann man überhaupt Arrays an eine Funktion übergeben oder liegt der Fehler möglicherweise darin, dass ich mit den Zeigern falsch gearbeitet habe?
Man kann Arrays an Funktionen übergeben, allerdings bedeutet Array in C/C++ nicht, dass wirklich alle Elemente übergeben werden, sondern nur der Zeiger auf das erste Element - die anderen Elemente kommen ja dahinter.

Vergleiche das mit C-Strings: (char const *) ist der Zeiger auf den ersten Buchstaben. Ein Text ist aber nichts anderes als hintereinander angereihte Buchstaben: ein Character-Array.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

tauberheli
Beiträge: 16
Registriert: Di Apr 27, 2010 3:47 pm

Re: C-Tutorial: Funktionen und Datentyp

Beitrag von tauberheli » Mi Sep 22, 2010 5:51 pm

Danke! Funktioniert jetzt.

Eigentlich ja nicht schwierig, aber gerade am Anfang ist das mit den Zeigern ziemlich verflixt.... ;)

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8862
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: C-Tutorial: Funktionen und Datentyp

Beitrag von Xin » Mi Sep 22, 2010 7:32 pm

tauberheli hat geschrieben:Eigentlich ja nicht schwierig, aber gerade am Anfang ist das mit den Zeigern ziemlich verflixt.... ;)
Normal. :-)

Dranbleiben, denn es ist wirklich nicht schwierig... wie Fahrradfahren... als Kind schlägt man sich die Knie auf und dann sagt man, es sei Kinderleicht ^^
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Antworten