当前位置: 首页 > article >正文

C语言结构体

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
 
//struct Student_s {
//	int num;
//	char name[20];
//	char gender;
//	int age;
//	float Chinese;
//	float Math;
//	float English;
//	char addr[30];
//};
//最后的分号一定要写!!!!!!

//typedef struct Student_s Student_t;
//typedef struct Student_s* pStudent_t;

//下面的结构体定义方式更常用!
typedef struct{
	int num;
	char name[20];
	char gender;
	int age;
	float Chinese;
	float Math;
	float English;
	char addr[30];
} Student_t, *pStudent_t;

int main() {
    //结构体赋值,所有的数据成员都拷贝了一份
	//struct Student_s stu1 = {1001, "Wuyifan", 'M', 30, 75, 70, 100, "Canada"};
	//struct Student_s stu2;
	//stu2 = stu1;
    
    //结构体数组
	Student_t stu[3] = {
		1001,"Wuyifan",'M',30,75,70,100,"Canada",
		1003,"Zhaowei",'F',45,80,85,70,"Anhui",
		1005,"Sunhonglei",'M',50,90,90,60,"Heilongjiang"
	};
	
    //从标准输入读取数据,给数据成员赋值
	//for (int i = 0; i < 3; ++i) {
    //  %c前面加上空格,表示忽略前置空白字符
	//	scanf("%d%s %c%d%f%f%f%s",
	//		&stu[i].num, stu[i].name, &stu[i].gender, &stu[i].age,
	//		&stu[i].Chinese, &stu[i].Math, &stu[i].English, stu[i].addr);
	//}
	
    //结构体指针
	pStudent_t p = stu;
	printf("(*p).num = %d\n", (*p).num);//*比. 优先级更低,所以需要加括号
	// -> 和 (*).等价
	printf("p->num = %d\n", p->num);//和上一个是等价的
	int num = p->num++;
	printf("num = %d, p->num = %d\n", num, p->num);
	num = p++->num;
	printf("num = %d, p->num = %d\n", num, p->num);
	num = ++p->num;
	printf("num = %d, p->num = %d\n", num, p->num);
}

http://www.kler.cn/a/133932.html

相关文章:

  • 《ElementPlus 与 ElementUI 差异集合》Icon 图标 More 差异说明
  • Axure网络短剧APP端原型图,竖屏微剧视频模版40页
  • C++ 数组与结构 编程练习
  • 网站小程序app怎么查有没有备案?
  • 矢量拟合(1)Sanathanan–Koerner算法
  • HarmonyOS ArkTS 下拉列表组件
  • [webservice] springboot整合cxf
  • PMCW体制雷达系列文章(4) – PMCW雷达之抗干扰
  • FPGA设计时序约束八、others类约束之Set_Case_Analysis
  • 2-(脏读,不可重复读,幻读 ,mysql5.7以后默认隔离级别)、( 什么是qps,tps,并发量,pv,uv)、(什么是接口幂等性问题,如何解决?)
  • 记录一个困难
  • Nginx 核心配置文 nginx.conf介绍
  • 一文讲明 Spring 的使用 【全网超详细教程】
  • python-opencv 培训课程笔记(2)
  • MatrixOne 支持多样化生态工具
  • 线性变换功能块S_RTI工程上的主要应用
  • 【2021集创赛】基于arm Cortex-M3处理器与深度学习加速器的实时人脸口罩检测 SoC
  • DHCP配置命令
  • 【libGDX】使用ShapeRenderer绘制几何图形
  • Python hashlib 模块详细教程:安全哈希与数据完整性保护
  • vite+vue3+electron开发环境搭建
  • Rust开发——Rust开发中thread_local
  • 系列六、Java垃圾回收器主要有哪些?
  • PC端使子组件的弹框关闭
  • Java排序算法之基数排序
  • Libvirt-Qemu-Kvm 操作手记