Wie @Krishnabhadra schon sagte, sind alle bisherigen Antworten anderer Nutzer richtig interpretiert worden, und ich möchte nur einige Punkte genauer analysieren.
Im Old-C wie auch im ANSI-C wird das " untypisierter formaler Parameter ", nehmen Sie die dimencion Ihrer Arbeit Register oder Anweisung Tiefe Fähigkeit (Schatten-Register oder Anweisung kumulativen Zyklus), in einem 8bit MPU, wird ein int16, in einem 16bit MPU und so wird ein int16 und so weiter, im Falle 64bit Architekturen können wählen, um Optionen wie kompilieren: -m32.
Auch wenn die Umsetzung auf hoher Ebene einfacher zu sein scheint, Bei der Übergabe von mehreren Parametern wird die Arbeit des Programmierers in der Kontrolldimencion Datentyp Schritt, anspruchsvoller.
In anderen Fällen, für einige Mikroprozessor-Architekturen, die ANSI-Compiler angepasst, nutzte einige dieser alten Funktionen, um die Verwendung des Codes zu optimieren, zwingt den Ort dieser "untyped formalen Parameter" zu arbeiten innerhalb oder außerhalb der Arbeit Register, heute erhalten Sie fast das gleiche mit der Verwendung von "volatile" und "Register".
Es ist jedoch anzumerken, dass die meisten modernen Compiler, keinen Unterschied zwischen den beiden Arten der Parameterdeklaration machen.
Beispiele für eine Kompilierung mit gcc unter Linux:
In jedem Fall ist die Angabe des Prototyps vor Ort sinnlos, da es keinen Aufruf ohne Parameter gibt, der auf diesen Prototyp verweist. Wenn Sie das System mit "untypisierten Formalparametern" für einen externen Aufruf verwenden, fahren Sie fort, einen deklarativen Prototyp-Datentyp zu erzeugen.
Zum Beispiel so:
int myfunc(int param);