首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C语言函数传递参数时&符号有关问题

2012-05-09 
C语言函数传递参数时&符号问题下面是链表的初始化的函数,可是不明白createlist_L函数中传递参数有个&符号。

C语言函数传递参数时&符号问题
下面是链表的初始化的函数,可是不明白createlist_L函数中传递参数有个&符号。
请问这个&在这里是什么意思?
createlist_L函数传递进去的是什么?
为什么有的链表的函数传递时要&这个符号,而有的不用?
//链表初始化 
#include <stdio.h> 
#include <stdlib.h> 
typedef int status; 
typedef status elemtype; 

typedef struct Lnode 

elemtype date; 
struct Lnode *next; 
}Lnode , *linklist; 
linklist L; 

void createlist_L(linklist &L, int n)

linklist p; 
L=(linklist)malloc(sizeof(Lnode)); 
L->next=NULL; 
for (int i=n;i>0;--i) 

p=(linklist)malloc(sizeof(Lnode)); 
printf("请输入链表的第%d个数!\n",i); 
scanf("%d",&p->date); 
p->next = L->next; 
L->next = p; 

}

[解决办法]
createlist_L(linklist &L, int n) //一般是为链表分配空间时用& ,通过对指针变量的引用,修改函数传入的指针变量的值
分配完空间,对分配的空间里的数据操作时就不加&,引用c++支持 而c是不支持的
[解决办法]

C/C++ code
这应该是C++的语法吧。引用,通过这种方法可以函数参数传递将链表头结点L的值修改。void createlist_L(linklist &L, int n) { linklist p; L=(linklist)malloc(sizeof =%s\n", str);   for(; i<4; ++i)   {      printf("%02x ", str[i]);      iVal[i] = str[i];   }   printf("\n");   for(i=0; i<4; ++i)      putchar(iVal[i]);   return 0;} 

热点排行