was bedeutet diese warnung?
-
hey=)
bin noch relativ neu im umgang mit c,also entschuldigt bitte blöde fragen jedweder art
Würde gerne wissen was diese warnung bedeutet : too many argumenst for format?
danke schon mal
gruß
fant
-
der dazugehörige code wäre ziemlich kewl
-
#include<stdio.h>
int main ( void ) {
short int i=0,
x=32767,
t=0;while(i<x){
t=t+1;
i++;
}
/*
do{t=t+1;
i++;}
while(i<x);
*/printf("positive obere grenze:%hd",t);
printf("negative obere grenze:-",t-1);return 0;
}
z27 :too many argumenst for format.
EDIT:Ich bin so ein schaaf... hb das formatzeichen vergessen...=) trotzdem danke... allerdings is mir schleierhaft wieso er "too many arguments for format " ausgibt.. ich hab doch garkein format angegeben... ? faulheit der compilerbauer?
?für keins is eins eins zuviel?
-
Fant schrieb:
für keins is eins eins zuviel?
Passt doch.
-
Fant schrieb:
printf("negative obere grenze:-",t-1);
du gibst Argumente an obwohl du das Formatzeichen vergessen hast, folglich stimmt die Compilerwarnung.
-
woher weiß der kompilier das die funktion pro argument ein formatzeichen
erwartet wird? oder ist printf in den kompilier eingebaut ?
-
fragezeichen? schrieb:
woher weiß der kompilier das die funktion pro argument ein formatzeichen
erwartet wird? oder ist printf in den kompilier eingebaut ?Nö, aber du kannst mit einer GCC-Erweiterung angeben, dass eine Funktion ein printf-Formatparameter benutzt und dann kann er die Argumente überprüfen. Steht alles auch in der GCC-Doku.