Mycr 发表于 2008-1-10 09:03

NODE *create() 这种函数类型,他们的值是怎么传递的?

#include <stdio.h>
#include <malloc.h>

typedef struct node
{
        int data;
        struct node *next;
}NODE;

NODE *create() [color=Red]/////////////[/color]
{
        NODE *head;
        head=(NODE *)malloc(sizeof(NODE));
        head->data=5;
        return head;
}

void main()
{
        NODE *a;
        a=create();
        printf("%d",a->data);
        printf("\n");
}

wenepajtl123 发表于 2008-1-10 19:33

我是这样理解的,理解错了别骂,能力有限......只要是函数的类型有很多种,就不一一说了,你这种是没有形参的,也就是根本没有参数进行传递操作,因为函数是NODE *create()也就是指针类型的,这个函数只有返回值,返回的是一个NODE类型的针指,a调用这个函数,所以函数返回的指针附值给a;呵呵,不知道理解的对不....见笑了

[[italic] 本帖最后由 wenepajtl123 于 2008-1-10 19:35 编辑 [/italic]]

Mycr 发表于 2008-1-10 21:53

看了你的解释,明白多了,谢谢你

页: [1]

编程论坛