如何在C中访问结构中的变量以打印?

如何在C中访问结构中的变量以打印?,c,struct,C,Struct,**>有没有办法访问来自其他结构的变量?什么时候 我尝试了这段代码,我得到了这个编译错误。 ** test.c:在函数“readRecordsFromFile”中: test.c:70:18:错误:“kdnode”之前应为表达式 printf(“%f\n”,kdnode.data.latitude) #包括 #包括 #包括 #包括 #包括 #定义记录大小112 typedef结构节点kdnode; 类型定义结构记录; 静态void readRecordsFromFile(char*文件名);

**>有没有办法访问来自其他结构的变量?什么时候

我尝试了这段代码,我得到了这个编译错误。 ** test.c:在函数“readRecordsFromFile”中: test.c:70:18:错误:“kdnode”之前应为表达式 printf(“%f\n”,kdnode.data.latitude)

#包括
#包括
#包括
#包括
#包括
#定义记录大小112
typedef结构节点kdnode;
类型定义结构记录;
静态void readRecordsFromFile(char*文件名);
结构记录{
车牌号;
长*名称[32];
双区;
国际人口;
int密度;
国际人口中心;
长区域;
双纬度;
双长;
};
结构节点
{
//kdnode左;
//kdnode-right;
记录数据;
布尔型;
双x;
双y;
整数页码;
};
int main(){
readRecordsFromFile(“data.dat”);
返回0;
}
静态无效readRecordsFromFile(字符*文件名)
{
文件*输入文件;
inputFile=fopen(文件名,“rb”);
int i;
如果(!inputFile){
printf(“无法打开文件”);
返回;
}
整数长度,记录计数;
fseek(inputFile,0,SEEK\u END);
长度=ftell(输入文件);
fseek(inputFile,0,SEEK\u SET);
记录计数=长度/尺寸(记录);
kd节点kd;
fread(&kd,记录大小,2,输入文件);
printf(“%d”,ftell(inputFile));
对于(i=0;i
typedef结构节点
typedef
ed为
knode
knode
表示一种数据类型,它不是标识符,因此

printf(" %f\n",kdnode.data.latitude);
一定是

printf(" %f\n", kd.data.latitude);

例如,您还应该检查函数的返回值,如
fread()

typedef struct\u节点
typedef
ed为
knode
knode
表示一种数据类型,它不是标识符,因此

printf(" %f\n",kdnode.data.latitude);
一定是

printf(" %f\n", kd.data.latitude);

您还应该检查函数的返回值,例如
fread()

仔细设置代码的格式,以便阅读时愉快。仔细设置代码的格式,以便阅读时愉快。