funktion(char *test,...) problem
-
Guten Abend,
ich wollte vor kurzem nachschauen, wie Standartfunktionen Quelltextmäßig her Funktionieren. Also habe ich mich in meinen MinGW Compiler auf die Suche nach dem Funktionen begeben...ich fand nur die Headerdateien^^. Eine davon war die "stdio.h", welche ich mir etwas genauer anschaute und folgende funktion entdeckte:
_CRTIMP int __cdecl __MINGW_NOTHROW printf (const char*, ...);
Neugierig geworden was der dreifache Punkte am End von printf bewirkte googlte ich etwas und fand nichts.
Nun hat es mich nicht mehr losgelassen und ich testete Solange bis ich zu diesem Ergebnis kamm:#include <stdio.h> int test( char *test,...) { int i; for(i=0;i<100;i++) { printf("%s \n",test-i); } } int main() { test("testing","Hallo","Fettpet"); return 0; }
Ok, dieser Code ist sehr schlecht, jedoch zeigte es mir wie der dreifache Punkt Funktioniert.
Meine Fragen lauten nun:
A: Wie heißt der 3fache Punkt richtig?
B: Gibt es dazu Lektüre?
C: Wo ist der Quelltext zu stdio.h?mfg
Fettpet
-
Fettpet schrieb:
A: Wie heißt der 3fache Punkt richtig?
ellipsen.
Fettpet schrieb:
B: Gibt es dazu Lektüre?
ja.
Fettpet schrieb:
C: Wo ist der Quelltext zu stdio.h?
verteilt in der stdio.c und weiteren wie der printf.c.
Fettpet schrieb:
Wo finde ich ein anderes Beispiel?
http://msdn.microsoft.com/en-us/library/kb57fad8(VS.71).aspx