设计一个企业网站大概多少钱创新的南昌网站制作
news/
2025/10/5 10:32:23/
文章来源:
设计一个企业网站大概多少钱,创新的南昌网站制作,推广普通话文字内容,wordpress花园破解小彬子一、结构体
结构体(struct)可以理解为用户自定义的特殊的复合的“数据类型”#xff1b; 1. 结构体变量的定义和初始化
定义结构体变量的方式#xff1a; 先声明结构体类型再定义变量名 在声明类型的同时定义变量
// 结构体类型的定义
struct stu {char name[50];int age;…一、结构体
结构体(struct)可以理解为用户自定义的特殊的复合的“数据类型” 1. 结构体变量的定义和初始化
定义结构体变量的方式 先声明结构体类型再定义变量名 在声明类型的同时定义变量
// 结构体类型的定义
struct stu {char name[50];int age;
};// 先定义类型再定义变量常用
struct stu s1 {mike, 18};// 定义类型同时定义变量
struct stu2 {char name[50];int age;
}s2 {yoyo, 19};
2. 结构体成员的使用
如果是结构体变量通过 . 操作成员
如果是结构体指针变量通过 - 操作成功
#include stdio.h
#include string.h// 结构体类型的定义
struct stu {char name[50];int age;
};int main() {// 定义结构体变量同时初始化struct stu s {mike, 18};// 打印成员变量printf(%s, %d\n, s.name, (s)-age);// 修改成功变量的内容strcpy(s.name, yoyo);s.age 19;// 打印成员变量printf(%s, %d\n, s.name, (s)-age);return 0;
}
3. 结构体做函数参数
传值是指将参数的值拷贝一份传递给函数函数内部对该参数的修改不会影响到原来的变量
#include stdio.h
#include string.h// 结构体类型的定义
struct stu {char name[50];int age;
};// 函数定义
void func(struct stu temp) {strcpy(temp.name, yoyo);temp.age 20;printf(函数内部%s, %d\n, temp.name, temp.age); // 函数内部yoyo, 20
}int main() {// 定义结构体变量struct stu s {mike, 18};// 调用函数值传递func(s);// 打印成员变量printf(函数外部%s, %d\n, s.name, (s)-age); // 函数外部mike, 18return 0;
}
4. 结构体地址传递
传址是指将参数的地址传递给函数函数内部可以通过该地址来访问原变量并对其进行修改。
#include stdio.h
#include string.h// 结构体类型的定义
struct stu {char name[50];int age;
};// 函数定义
void func(struct stu *p) {strcpy(p-name, yoyo);p-age 20;printf(函数内部%s, %d\n, p-name, p-age); // 函数内部yoyo, 20
}int main() {// 定义结构体变量struct stu s {mike, 18};// 调用函数地址传递func(s);// 打印成员变量printf(函数外部%s, %d\n, s.name, (s)-age); // 函数内部yoyo, 20return 0;
}
二、共用体(联合体)
共用体union是一个能在同一个存储空间存储不同的数据类型
共用头所占的内存长度等于其最长成员的长度也有叫共用体
同一内存段可以用来存放几种不同类型的成员但每一瞬时只有一种起作用
共用体变量中起作用的成员是最后一次存放的成员在存入一个新的成员后原有的值会被覆盖
共用体变量的地址和他的各成员地址一致
#include stdio.h// 共用体联合体
union Test
{int a;char b;short c;
};int main()
{// 定义共用体变量union Test t;// 共用体大小是最大成员类型大小printf(union Test%lu\n, sizeof(union Test));// 所有成员的首地址是一样的printf(a%p b%p c%p t%p\n, (t.a), (t.b), (t.c), t);// 1个成员赋值 会影响其他成员t.a 0x44332211;printf(b%x\n, t.b); // 11printf(c%x\n, t.c); // 2211t.b 0x00;printf(a%x\n, t.a); // 44332200printf(c%x\n, t.c); // 2200return 0;
};
三、枚举
将变量的值一一列举出来变量的值只限于列举出来的值的范围内 语法格式 enum 枚举名{ 枚举值表; }; 在枚举值中应列出所有可用值也称为枚举元素
枚举值是常量不能在程序中用赋值的语句对他赋值
枚举的值是罗列的 所有的值都是在前面的基础上进行累加
#include stdio.h// ○ 在枚举值表中应列出所有可用值也称为枚举元素
// ○ 枚举值是常量不能在程序中用赋值语句再对它赋值
// ○ 枚举元素本身由系统定义了一个表示序号的数值从0开始顺序定义为012 …enum weekday{sun 2, mon, tue, wed, thu, fri, sat
};enum bool {flase, true
};
int main() {// 枚举将变量的值一一列举出来变量的值只限于列举出来的值的范围内enum weekday a,b,c;// 枚举的值是罗列的 所有的值都是在前面的基础上进行累加a sun; // 2b tue; // 4c sat; // 8printf(a%d b%d c%d\n,a,b,c);enum bool flag;flag flase;if (flag true) {printf(flag为真\n);}else{printf(flag为假\n);}return 0;
}
;
四、typedef
typedef是C语言的关键字作用是为一种数据类型定义一个新名字
#include stdio.h// 类型起别名
typedef int INT;
typedef char BYTE;
typedef BYTE T_BYTE;
typedef unsigned char UBYTE;// struct type 起别名
// TYPE为普通结构体类型PTYPE为结构体指针类型
typedef struct type {UBYTE a;INT b;T_BYTE c;
} TYPE, * PTYPE;int main() {TYPE t;t.a 254;t.b 10;t.c c;PTYPE p t;printf(%u, %d, %c\n, p-a, p-b, p-c);return 0;
}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/928129.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!