睿翼1992 发表于 2018-6-6 16:29:41

请大神指教一个C语言语法问题

typedef struct TEST_BUFF{
    int    *test;
    intu16Addr;
}Debug_BUFF;
typedef struct _TESTDATA {
    Debug_BUFF *macRxW;
    int      *msW;
    int      u16WAddr;
    int      u16WtAddr;
}TEST_DATA;

void main(void)
{
        TEST_DATA Test_A;
       
        Test_A.macRxW->test=NULL;    //请问这一步初始化有问题吗?代码在CCS里面运行到这里就死掉了
}

lcw_swust 发表于 2018-6-6 16:41:27

Test_A.macRxW是个指针,首先得给它赋个值啊,没赋值的话就不知道->test=NULL是写到哪里去了

luobote55 发表于 2018-6-6 16:44:33

Test_A.macRxW没有初始化。

nanfang2000 发表于 2018-6-6 16:54:29

楼主这是送分题

WM_CH 发表于 2018-6-6 17:33:33

1L 对               

睿翼1992 发表于 2018-6-6 17:36:27

lcw_swust 发表于 2018-6-6 16:41
Test_A.macRxW是个指针,首先得给它赋个值啊,没赋值的话就不知道->test=NULL是写到哪里去了 ...

是的是的   送分了{:cry:}

lcl 发表于 2018-6-6 17:36:51

1L正解你只定义没赋值,也就是没指定具体的内存地址没地方写值

睿翼1992 发表于 2018-6-6 17:37:09

luobote55 发表于 2018-6-6 16:44
Test_A.macRxW没有初始化。

3q突然就明白了   功力不够啊

睿翼1992 发表于 2018-6-6 17:37:45

nanfang2000 发表于 2018-6-6 16:54
楼主这是送分题

功力还有待修炼

睿翼1992 发表于 2018-6-6 17:38:05

WM_CH 发表于 2018-6-6 17:33
1L 对

+1               

睿翼1992 发表于 2018-6-6 17:38:39

lcl 发表于 2018-6-6 17:36
1L正解你只定义没赋值,也就是没指定具体的内存地址没地方写值

OkOK   +1

t3486784401 发表于 2018-6-7 01:50:56

送分题要是写成这样,就成了送命题

zhongsandaoren 发表于 2018-6-7 10:01:39

好的好的+1+1

7nian 发表于 2018-6-8 16:21:46

楼主想不想删帖

wbdos 发表于 2018-6-8 17:19:25

厉害了 我居然一下没有看出来

wind2100 发表于 2018-6-9 08:53:41

指针的东西 都要初始化 , 分呢?      不然你指的谁

dxgdsx 发表于 2018-6-9 09:51:13

C语言指针使用,两个经典错误:(1)使用未经初始化的指针(该指针没有指向有效的内存);(2)函数返回值为指针时,当时函数返回时,该指针指向的内存已经被销毁,此时再去使用该指针会崩溃。

睿翼1992 发表于 2018-6-27 13:50:06

dxgdsx 发表于 2018-6-9 09:51
C语言指针使用,两个经典错误:(1)使用未经初始化的指针(该指针没有指向有效的内存);(2)函数返回值 ...

{:handshake:}

rube 发表于 2018-6-27 15:15:35

学习一下
页: [1]
查看完整版本: 请大神指教一个C语言语法问题