Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo,

wieder ein Problem :)

so verstehe ich die Übergabe von Argumenten bei Funktionen:

void Funktion(int X) //wird nichts zurück gegeben, braucht aber X

int Funktion() //wird ein Integer zurück gegeben

nun, habe im Buch 2 Funktionen, die nichts mit einander zutun haben,

mir ist nur aufgefallen dass beide Void sind, und eine davon aber einen Wert zurück gibt.

Habe beide Funktionen so weit wie möglich abgespeckt, damits übersichtlich wird, und zum Schluss in eine zusammen gefasst.


void myFunktion(char szX[], int nX)
{
szX[4] = '1'; //zum "Text" wird "1" angehängt, szX[4]="Text1"
nX++; //hier ist nX=2
}
void main()
{
char szY[8]="Text";
int nY = 1;
myFunktion(szY, nY); //hier ist szY="Text1", aber nY=1.
}
[/PHP]

Nun, warum bekommt die scY Wert übergeben, und nY aber nicht?

Ich habe bestimmt irgend wo einen Denkfehler, nur finde ich diesen nicht :confused:

Danke allen für die Mühe

Kein Denkfehler, sondern eine Spracheigenschaft von C und C++, die du nicht kennst ;)

Normalerweise werden von den Funktionsargumenten Kopien gemacht (call by value). Änderungen in der aufgerufenen Funktion betreffen nur diese Kopie, und wirken sich nicht auf die Variable aus, die im Aufruf steht.

Arrays sind da allerdings eine Ausnahme. Von einem Array wird immer nur ein Verweis übergeben (call by reference). Änderungen am Array in der aufgerufenen Funktion wirken sich damit auf das Array aus, das für den Aufruf benutzt wurde.

  • Autor

Aaaaa, wieder was gelernt :)

Ich hab wegen dieser Spracheigenschaft kaum schlalfen können, hat mir keine ruhe gelassen. Der Typ, der das Buch geschriben hat, könnte es auch vermerken, und nicht einfach so stehen lasen

Danke Dir!

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.