PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Unklarheit mit void Funktionen



super-robman
29.08.2011, 19:38
Hallo,

ich werde nicht ganz klar über void Funktionen. Void Funktionen geben prinzipiell keinen Wert zurück. Kann ich sie trotzem rechnen lassen? z.B.

void pin3_touch_check () //Funktion
{
pin3_lcd = PINA & 0x10;
if (pin3_lcd == 0)
{
horizontal_register--;
pin_put++;
}
}
pin3_touch_check(); //Aufruf

Würde die void Funktion horizontal_register aund pin_put global um eins erhöhen?

Danke für die Hilfe.

Grüße Robert

p.s.: Ein super Forum. Ihr habe mir schon viel geholfen!

markusj
29.08.2011, 19:57
Ja, würde sie. Eine void-Funktion hat nur keinen Rückgabewert, einevariable = voidfunktion(); funktioniert also nicht. Aber jede Funktion kann globalen Variablen (wie in deinem Beispiel) ändern, über Zeiger sind ebenfalls schreibende Zugriffe auf "fremden" Speicher möglich.

mfG
Markus

super-robman
29.08.2011, 20:01
Dank Dir Markus!