Menge der Zeichen in einem char Array in C?

Gast #6495070
Lesenswert?

Hallo,

Ich habe folgendes Problem:

Zunächst wird eine Funktion erstellt. In dieser Funktion soll beim 
Funktionsaufruf ein Text eingegeben werden(z.b.Hallo). Dieser Text soll 
in einem char Array mit max. 500 Zeichen gespeichert werden. Dann soll 
dieses char Array in einer printf Funktion ausgegeben werden. Soweit bin 
ich bis jetzt gekommen.

Nun will ich Die Nummer des letzten Index meines char Array in dem ein 
Zeichen gespeichert wurde plus eins (Bei "Hallo" 5+1) in einer int 
variable speichern um so die Menge der Zeichen zu bekommen die sich in 
meiner printf Funktion befinden.

Geht das?
Gast #6495119
Lesenswert?

Jörg W. schrieb:
> LuisBaatz schrieb:
>> um so die Menge der Zeichen zu bekommen die sich in meiner printf
>> Funktion befinden
>
> Du brauchst nicht zufällig einfach nur den Rückgabewert von printf()
> (den die meisten Aufrufer ignorieren)?

Ich wusste nicht, dass die Funktion einen Rückgabewert hat.
Entspricht dieser der Menge an Zeichen die sich in der Funktion 
befinden?
Und wenn ja, wie speichere ich diesen Wert in einer Variable?
Moderator Persönliche Seite #6495124
Lesenswert?

LuisBaatz schrieb:

> Ich wusste nicht, dass die Funktion einen Rückgabewert hat.

Dokumentation lesen bildet. ;-)

(Früher sagte man da einfach "RTFM".)

> Entspricht dieser der Menge an Zeichen die sich in der Funktion
> befinden?

Es "befinden sich" keine Zeichen "drin".

printf() gibt Zeichen nach stdout aus. Am Ende gibt es die Anzahl der 
erfolgreich ausgegebenen Zeichen zurück.

> Und wenn ja, wie speichere ich diesen Wert in einer Variable?

Wie bei jeder anderen Funktion:
1
foo = bar();
Gast #6495125
Lesenswert?

Mathias B. schrieb:
> Hi, also sowas
>
> char zeichenkette[500];
> int anzahl;
>
> strcpy(zeichenkette,"Hallo");
>
> //Dann gibt
>
> anzahl=strlen(zeichenkette);
>
> Die Anzahl der Zeichen in anzahl.

Ich bin leider noch Anfänger und würde ungern weitere Funktionen 
verwenden um den Code nachvollziehen zu können. Gibt es eine Möglichkeit 
das Problem ohne weiter Funktionen zu beheben?
Gast #6495128
Lesenswert?

Jörg W. schrieb:

>> Entspricht dieser der Menge an Zeichen die sich in der Funktion
>> befinden?
>
> Es "befinden sich" keine Zeichen "drin".
>
> printf() gibt Zeichen nach stdout aus. Am Ende gibt es die Anzahl der
> erfolgreich ausgegebenen Zeichen zurück.

Okay vielen dank :) Ich denke ich muss tiefer in die Materie eintauchen 
und erst richtig Verstehen wie die printf Funktion funktioniert. Ich bin 
noch Anfänger(Habe vor drei Wochen angefangen c zu lernen) und habe 
keine Ahnung was stdout ist.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren