读书人

。当文件为后缀为.c时编译器无法识别amp;

发布时间: 2013-01-28 11:49:56 作者: rapoo

求助。当文件为后缀为.c时编译器无法识别&取地址符,.cpp时可以编译通过??
#include<stdio.h>
#include<stdlib.h>
#define OK 1

typedef int Elemtype;
typedef int Status;
typedef Elemtype *Triplet;
//下面那一句报错 换成.cpp 或去掉& 不报错
//[Error] F:\myfolde\新建文件夹\资料\资料\新建文件夹\c数据结构\shujujiegou\mycode\InitTriplet.c:9: error: syntax error before '&' token

Status InitTriplet(Triplet &T,Elemtype v1,Elemtype v2,Elemtype v3)
{
T = (Elemtype *)malloc(3*sizeof(Elemtype));

T[0] = v1;
T[1] = v2;
T[2] = v3;

return OK;
}

Status DestoryTriplet(Triplet &T)
{
free(T); T=NULL;
}
int main()
{
Elemtype x=10;
Triplet T = &x;
Elemtype v1=2,v2=3,v3=4;
InitTriplet(T,v1,v2,v3);
printf("%d",*T);

getchar();
DestoryTriplet(T);
printf("%d",T);
}

求大家能为我解释一下哪里错了 谢谢。 我的编译器是cfree
[解决办法]
试试2级指针。 Triplet **T
[解决办法]

引用:
引用:试试2级指针。 Triplet **T

恩 。 我改了一下这样子是可以了

#include<stdio.h>
#include<stdlib.h>
#define OK 1

typedef int Elemtype;
typedef int Status;
typedef Elemtype *Tr……

嗯。malloc完,记着free就行

读书人网 >C语言

热点推荐