C语言编程遇到难题了··求帮忙
程序如下:
头文件
23 union {
24 char ch;
25 unsigned uch;
26 signed sch;
27 int in;
28 unsigned uin;
29 signed sin;
30 short int shin;
31 unsigned short ush;
32 signed short ssh;
33 long int lin;
34 unsigned long ulon;
35 signed long slon;
36 long long lonlon;
37 unsigned long long ulonlon;
38 float fl;
39 double dou;
40 }data;
41
42 typedef struct {
43 union data;
44 struct fun_data* next;//用于指向下一个参数
45 }fun_data;
54 struct afun_data{
55 char* fun_name;
56 fun_data* start_data;
57 struct afun_data* next;//用于指向下一个函数
58 struct afun_data* last;
59 } ;
60
61 pid_shm back_shm;
62 struct afun_data* fun_now;
63 fun_now=(struct afun_data*)malloc(sizeof(struct afun_data));
64 fun_data *data_now,pointb;
65 data_now=&pointb;
程序代码部分
40 void send_fun(char* a)
41 {
42 struct afun_data* fun_new;
43 fun_new=(struct afun_data*)malloc(sizeof(struct afun_data));
44 fun_new->fun_name=(char*)malloc(sizeof(char)+1);
45 fun_new->fun_name=a;
46 fun_now->next=(struct afun_data*)malloc(sizeof(struct afun_data));
47 fun_now->next=fun_new;
48 fun_new->last=(struct afun_data*)malloc(sizeof(struct afun_data));
49 fun_new->last=fun_now;
50 data_now=fun_new->start_data;
51 fun_now=fun_new;
52 }
双向链表,fun_now指向当前的,fun_new是新的
46和47会报错···求解析 就解答
没有多少分
------解决方案--------------------
C/C++ code
40 void send_fun(char* a)
41 {
42 struct afun_data* fun_new;
43 fun_new=(struct afun_data*)malloc(sizeof(struct afun_data));
44 fun_new->fun_name=(char*)malloc(sizeof(char)+1);
45 fun_new->fun_name=a;
47 fun_now->next=fun_new;
49 fun_new->last=fun_now;
50 data_now=fun_new->start_data;
51 fun_now=fun_new;
52 }