怎么给指针结构体数组赋值
#include <stdio.h>
#define N 27
#include <stdlib.h>
struct Donnees1{
char car;
float proba;
}Donnees[N];
typedef struct Donnees1 Donnees1;
char car1[]=" abcdefghijklmnopqrstuvwxyz";
;
float proba1[]={0.1834,0.0640,0.0064,0.0259,0.0260,0.1486,0.0078,0.0083,0.0061,0.0591,0.0023,0.0001,0.0465,0.0245,0.0623,0.0459,0.0256,0.0081,
0.0555,0.0697,0.0572,0.0506,0.0100,0.0001,0.0031,0.0021,0.0008};
void Donnees2(char car1[],float proba1[],Donnees1 *Donnees3){
int i;
for(i=0;i<N;i++){
Donnees3[i].car=car1[i];
Donnees3[i].proba=proba1[i];
}
}
struct arb{
struct arb *FG;
struct arb *FD;
char Etiquette;
float Poids;
};
typedef struct arb arb1;
struct foret{
arb1 *arb[N];
int nb;
};
typedef struct foret F1;
F1 F;
F1 initialiserforet(F1 F ,Donnees1 *Donnees){
int i;
for(i=0;i<27;i++){
F.arb[i]=(arb1 *)malloc(sizeof(arb1));
F.arb[i]->FG=NULL;
F.arb[i]->FD=NULL;
F.arb[i]->Etiquette=Donnees[i].car;
F.arb[i]->Poids=Donnees[i].proba;
}
return F;
}
int main(){
Donnees2(car1,proba1,Donnees);
int i;
for(i=0;i<N;i++){
printf("%c %f\n",Donnees[i].car,Donnees[i].proba);
}
initialiserforet(F,Donnees);
for(i=0;i<N;i++){
printf("%c %f\n",F.arb[i]->Etiquette,F.arb[i]->Poids);
};
return 0;
}
首先我给结构体数组Donnees 赋值 然后我想把Donnees 里面的数值赋值给指针结构体数组F.arb[N] 但是我运行不起来请问 我错在哪了 谢谢大家了先
#define N 27
#include <stdlib.h>
struct Donnees1{
char car;
float proba;
}Donnees[N];
typedef struct Donnees1 Donnees1;
char car1[]=" abcdefghijklmnopqrstuvwxyz";
;
float proba1[]={0.1834,0.0640,0.0064,0.0259,0.0260,0.1486,0.0078,0.0083,0.0061,0.0591,0.0023,0.0001,0.0465,0.0245,0.0623,0.0459,0.0256,0.0081,
0.0555,0.0697,0.0572,0.0506,0.0100,0.0001,0.0031,0.0021,0.0008};
void Donnees2(char car1[],float proba1[],Donnees1 *Donnees3){
int i;
for(i=0;i<N;i++){
Donnees3[i].car=car1[i];
Donnees3[i].proba=proba1[i];
}
}
struct arb{
struct arb *FG;
struct arb *FD;
char Etiquette;
float Poids;
};
typedef struct arb arb1;
struct foret{
arb1 *arb[N];
int nb;
};
typedef struct foret F1;
F1 F;
F1 initialiserforet(F1 F ,Donnees1 *Donnees){
int i;
for(i=0;i<27;i++){
F.arb[i]=(arb1 *)malloc(sizeof(arb1));
F.arb[i]->FG=NULL;
F.arb[i]->FD=NULL;
F.arb[i]->Etiquette=Donnees[i].car;
F.arb[i]->Poids=Donnees[i].proba;
}
return F;
}
int main(){
Donnees2(car1,proba1,Donnees);
int i;
for(i=0;i<N;i++){
printf("%c %f\n",Donnees[i].car,Donnees[i].proba);
}
initialiserforet(F,Donnees);
for(i=0;i<N;i++){
printf("%c %f\n",F.arb[i]->Etiquette,F.arb[i]->Poids);
};
return 0;
}
首先我给结构体数组Donnees 赋值 然后我想把Donnees 里面的数值赋值给指针结构体数组F.arb[N] 但是我运行不起来请问 我错在哪了 谢谢大家了先
...全文
相关推荐
结构体中数组成员赋值
用实例教你给结构体中数组成员赋值
struct 结构体中数组和指针的操作
本文主要介绍在struct 结构体中对数组和指针的操作细节。
STM32结构体与函数指针[代码]
本文深入解析了STM32开发中C语言结构体与函数指针的核心概念与应用。主要内容包括:1. 结构体基础概念与内存操作,详细介绍了函数指针类型定义、包含函数指针的结构体设计及嵌套结构体指针的应用;2. 结构体赋值的5种核心方式,涵盖同类型变量直接赋值、指针赋值、数组关联等场景;3. 函数指针与结构体的深度结合,阐述函数指针本质、调用流程及回调函数应用;4. 指针与数组操作的底层原理,包括结构体指针形参、数组数据解析及指针数组区别。文章通过大量代码示例展示了在嵌入式开发中如何高效使用这些特性,特别强调了内存管理、类型匹配和防御性编程等实践要点。
学习二维动态数组指针做矩阵运算的方法
片文章介绍了如何利用二维动态数组指针做矩阵运算,需要的朋友可以参考下
C语言给结构体指针赋值[借鉴].pdf
C语言给结构体指针赋值[借鉴].pdf


