it-swarm.com.de

printf eine Variable in C

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int x = 1;

    printf("please make a selection with your keyboard\n");
    sleep(1);
    printf("1.\n");

    char input;
    scanf ("%c", &input);
    switch (input) {
        case '1':
            x=x+1;
            printf(x);
    }

    return(0);
}

Ich versuche, eine Variable zum Hinzufügen einer Variablen zu machen und diese Variable dann auszudrucken, aber es scheint, als würde mein Code nicht funktionieren.

mein Ausgabefehler ist 

newcode1.c: In function ‘main’:
newcode1.c:20:2: warning: passing argument 1 of ‘printf’ makes pointer from integer without a cast [enabled by default]
In file included from newcode1.c:1:0:
/usr/include/stdio.h:362:12: note: expected ‘const char * __restrict__’ but argument is of type ‘int’
newcode1.c:20:2: warning: format not a string literal and no format arguments [-Wformat-security]
5
Dave

Ihre printf benötigt einen Formatstring:

printf("%d\n", x);

Diese Referenzseite enthält Details zur Verwendung von printf und verwandten Funktionen.

19
Shafik Yaghmour

Wie Shafik bereits schrieb, müssen Sie das richtige Format verwenden, da Sie mit scanf ein Zeichen erhalten. Zögern Sie nicht, hier zu suchen, wenn Sie sich nicht sicher sind, wie Sie diese verwenden: http://www.cplusplus.com/ referenz/cstdio/printf/

Hinweis: Es ist schneller/schöner, x=x+1 zu schreiben. der kürzere Weg: x++;

Tut mir leid, dass ich die beantwortete Antwort beantwortet habe, ich wollte nur den Link geben - die Seite war für mich immer nützlich, wenn ich mit C.

2
Ms. Nobody