谁能不死 发表于 2019-11-12 17:21:55

编译没有报错可是不能运行

# include <stdio.h>
int main(void)
{
        struct student
        {
                int num;
                char *name;
                char sex;
                float score;
        }boy1, boy2 = {102, 'jane', 'M', 98.5};


        boy1 = boy2;

        printf("Num=%d\nName=%s\nScore=%f\n", boy1.num, boy1.name, boy1.score);
        printf("\n\n\n");
        printf("Num=%d\nName=%s\nScore=%f\n", boy2.num, boy2.name, boy2.score);

        return 0;
       
}

--------------------Configuration: hangshu4 - Win32 Debug--------------------
Compiling...
hangshu4.c
C:\Program Files (x86)\Microsoft Visual Studio\MyProjects\hangshu4\hangshu4.c(10) : warning C4047: 'initializing' : 'char *' differs in levels of indirection from 'const int '

hangshu4.obj - 0 error(s), 0 warning(s)


编译好像是没有什么问题,但是无法运行不知道是怎么回事?

superbe 发表于 2019-11-12 17:52:46

{102, 'jane', 'M', 98.5};   'jane'应该是"jane",双引号

谁能不死 发表于 2019-11-12 18:04:20

superbe 发表于 2019-11-12 17:52
{102, 'jane', 'M', 98.5};   'jane'应该是"jane",双引号

厉害高手

谁能不死 发表于 2019-11-12 18:05:15

superbe 发表于 2019-11-12 17:52
{102, 'jane', 'M', 98.5};   'jane'应该是"jane",双引号

谢谢你了

bin554385863 发表于 2019-11-12 18:11:10

谁能不死 发表于 2019-11-12 18:05
谢谢你了

我不相信字符串用单引号你的编译器会没警告或者报错

谁能不死 发表于 2019-11-13 08:27:21

bin554385863 发表于 2019-11-12 18:11
我不相信字符串用单引号你的编译器会没警告或者报错

不理解你这句话的意思,要是有警告或者报错;现在我也是懂得根据提示去排除故障的;
页: [1]
查看完整版本: 编译没有报错可是不能运行