omma: C/C++: der void Parameter

Hallo,

  
/* C: Beispiel 1: */  
void func(void)  
{  
 printf("i am a function\n");  
}  
  
/* C: Beispiel 2: */  
void func()  
{  
 printf("i am a function\n");  
}  

  
// C++: Beispiel 3:  
void func(void)  
{  
 cout << "i am a function\n";  
}  
  
// C++: Beispiel 4:  
void func()  
{  
 cout << "i am a function\n";  
}  

Wie ist das nun mit dem void als einzigen parameter? Jeder Compiler den ich kenne akzeptiert beides. Was ist nun erlaubt bzw. was ist Standard?
Ist das reine Glaubenssache oder Geschmackssache?

grüße omma

  1. hi!

    Wie ist das nun mit dem void als einzigen parameter? Jeder Compiler den
    ich kenne akzeptiert beides. Was ist nun erlaubt bzw. was ist Standard?

    Beides ist erlaubt. In einer Funktionsdefinition macht es keinen Unterschied,
    ob du void oder eine leere Argumentliste verwendest. In einer Deklaration
    gibt es einen kleinen Unterschied, weil die Benutzung von void eine Funktion
    deklariert, die keinen Parameter hat, waehrend eine leere Argumentliste
    angibt, dass die Anzahl der Parameter an dieser Stelle unspezifiziert ist.

    bye, Frank!

    --
    Never argue with an idiot. He will lower you to his level and then
    beat you with experience.
    1. hi!

      Das ganze bezog sich uebrigens auf C. Ich glaube, in C++ gibt es keinen
      Unterschied zwischen beiden Schreibweisen mehr.

      bye, Frank!

      --
      Never argue with an idiot. He will lower you to his level and then
      beat you with experience.
      1. Hi Frank!

        Das ganze bezog sich uebrigens auf C. Ich glaube, in C++ gibt es keinen
        Unterschied zwischen beiden Schreibweisen mehr.

        Richtig, der Compiler ergänzt das void automatisch.

        MfG H☼psel

        --
        "It's amazing I won. I was running against peace, prosperity, and incumbency."
        George W. Bush speaking to Swedish Prime Minister unaware a live television camera was still rolling, June 14, 2001
        Selfcode: ie:% fl:( br:> va:) ls:& fo:) rl:? n4:& ss:| de:] js:| ch:? sh:( mo:) zu:)