Frage zur Übergabe eines char-Arrays
-
Hallo,
habe zu folgendem Quelltext ein kleines Verständnisproblem:
#include <stdio.h> void test(char *a[]); int main(int argc, char *argv[]) { char *array[2]; printf("%s %s\n", argv[1], argv[2]); array[0] = argv[1]; array[1] = argv[2]; test(array); } void test(char *a[]) { printf("%c %c\n", *a[0], *a[1]); }
Die Ausgabe ist dann:
Aufruf: ./a.out eins zwei Ausgabe printf #1: eins zwei Ausgabe printf #2: e z
Mir ist bewusst, dass dem so richtig ist, aber wie bekomme ich eine Ausgabe der gesamten Zeichenkette hin? Ist die Übergabe des char-Arrays so überhaupt korrekt und sinnvoll?
-
%s und als parameter den string und nicht nur ein zeihen
-
momomo schrieb:
%s und als parameter den string und nicht nur ein zeihen
Ahhh, ich bin so saublöd. Auf sowas muss man doch selbst kommen. Danke