Dois-je fonte des tableaux de pointeurs lors de leur passage à variadic fonctions comme printf?

Puis-je passer un tableau à printf directement:

char text[1024] = "text";
printf("%s", text);

Ou devrais-je convertir explicitement à un pointeur de char:

char text[1024] = "text";
printf("%s", (char*) text);

Je demande parce que j'ai pensé que peut-être il copie les éléments du tableau directement dans le va_list au lieu de mettre simplement un pointeur vers le premier élément.

il n'y a pas de différence
Il suffit de ne pas oublier le terminateur null.
est {'t','e','x','t',0}
Oui stefan, mais si vous êtes de manipuler des tableaux (et de poser cette question) c'est quelque chose à retenir.
Je ne dis pas que c'est directement pertinente. Je viens de supposer que c'est probablement quelqu'un qui est de stocker du texte dans les tableaux seront en faisant des choses comme la copie de texte à partir d'un tableau à l'autre. Aussi, si cette personne est un parent débutant, car cette question me suggère, alors ils voudront peut-être conscient des choses comme le fait que strlen sera de retour à un nombre inférieur au nombre d'octets que vous voulez généralement à copier. Juste essayer d'être utile.

OriginalL'auteur sashoalm | 2012-04-09