数据类型简介

use*_*913 3 c

我刚开始学习C并直接从一本书中复制了它.有人能告诉我为什么这不起作用?

#include <stdio.h>

int main (void)
{
    int     integerVar = 100;
    float   floatingVar = 331.79;
    double  doubleVar = 8.44e+11;
    char    charVar = "W";

    _Bool   boolVar = 0;

    printf ("integerVar = %i\n", integerVar);
    printf ("floatingVar = %f\n", floatingVar);
    printf ("doubleVar = %e\n", doubleVar);
    printf ("doubleVar = %g\n", doubleVar);
    printf ("charVar = %c\n", charVar);

    printf ("boolVar = %i\n", boolVar);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

datatypes.c: In function ‘main’:
datatypes.c:8: warning: initialization makes integer from pointer without a cast
Run Code Online (Sandbox Code Playgroud)

Mys*_*ial 6

问题在这里:

char    charVar = "W";
Run Code Online (Sandbox Code Playgroud)

你可能意味着:

char    charVar = 'W';
Run Code Online (Sandbox Code Playgroud)

"W"是一个字符串.'W'是一个炭.后者就是你想要的.