c语言结构体变量怎么比较大小假设p,e都是如下类型的结构体变量?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言结构体变量怎么比较大小假设p,e都是如下类型的结构体变量?相关的知识,希望对你有一定的参考价值。

typedef struct //项的表示,多项式的项作为LinkList的数据元素 int coef; // 系数COEFFICIENT int expn; // 指数EXPONENT term, ElemType;

参考技术A 结构之间的大小关系是由业务逻辑定义的,你首先要从领域模型角度定义结构代表的对象的大小关系如何定义。这和C语言本身没有关系追问

这个p->data和e就是结构体,为什么他比的是指数

追答

啥叫指数?

追问

就是定义一个结构体,包含系数和指数。就是3x^3这样的数

追答

那就写一个函数用数学方法比较大小啊?两个指数该怎么比,数学上有严格定义

c语言怎么结构数据初始化?

C语言
结构体类型
变量初始化分为
普通变量

数组变量
两种形式,说明如下:
typedef struct

int x,y;

direction
;
direction dir=1,2 ; //普通变量,用一组括起来,成员变量数据间以逗号分隔,按变量定义顺序对应数值。未赋值成员,默认填0
direction move[8]= //数组变量,整体用一组括起来,每一个元素按普通变量格式进行书写,各元素间用逗号分隔。未赋值元素,默认填0
0,0,0,1,1,0,1,1,
2,0,2,1,3,0,3,1
;
参考技术A 向地址0便是空值,其他数据若内容是0便是空值。填充一大片内存区域可以使用memset函数,它的填充长度是按字节计。
整形:int
a
=
0;
字符型:char
a
=
0;
数组:
int
a[20];
memset(
a,
0,
sizeof(int)*20
);
C字符串只需要把第一个字符设为'\0'即可。
当然也可以全部清成0。
char
a[20]
=
"ashdfuih";
memset(
a,
0,
sizeof(char)*20
);
例如有一个结构体Some
x,可以这样清零:
memset(
&x,
0,
sizeof(Some)
);
如果是一个结构体的数组Some
x[10],可以这样:
menset(
x,
0,
sizeof(Some)*10
);
任何一个指针都可以通过直接赋为0变成空指针:
Some*
p
=
0;
另外,虚机团上产品团购,超级便宜
参考技术B 你说的那个是逆序建立n个节点的链表,建完头结点后由于链表中没有其他节点就把头结点的next置为空,这一点如果不明白的话去看链表那一章,有介绍!!!
之后从后往前建立链表!!刚开始是l->next =null
要注意p是每次新建的节点,这样从后往前以此建立链表,只要明白p是每次新建的节点,和从后往前建立,就会明白的!!给你花了张图!!

以上是关于c语言结构体变量怎么比较大小假设p,e都是如下类型的结构体变量?的主要内容,如果未能解决你的问题,请参考以下文章

c语言中,系统为结构类型变量所分配的内存空间大小如何确定?

C语言中结构体变量所占内存大小的计算

C语言 如何计算结构体的大小

关于c语言结构体变量成员引用的问题

关于c语言结构体变量成员引用的问题

c语言结构体能否整体赋值