C语言之数据类型

来源:互联网 发布:免费名师讲课软件 编辑:程序博客网 时间:2024/06/09 17:35

C语言的数据类型分为:标准数据类型和构造数据类型

标准数据类型:

signed :bool,char,short,int,float,double,long,long long,
unsigned: char,short,int,float,double,long,long long,

构造数据类型:

数组,结构体,联合体,枚举

一维数组:

数组是一种数据类型连续的集合;

example:auto int a[9];//存储类型 数据类型 数组名 (标识符) [下标]//数据类型是修饰数组元素的,下标意味着有多少个连续的空间数组的定义申明以及初始化:int a[5] = {1,2,3,4,5};//数组只有在定义时可以整体性赋值int b[3];b[3] = {1,2,3}; //错误的赋值方式int c[3] = {1}; //其c[0] = 1;c[1] = 0;c[2] = 0;数组名的三个含义:1、数组名2、首元素首地址3、指针常量例:int a[5];&a表示整个数组空间的地址   &a+1表示跨越整个数组空间 a表示数组首个元素的地址 a == &a[0] a+1 == &a[0]+1 == a[1]
字符数组:char b[5] = {a,b,c,d,e};字符串数组:char a[10] = "hello";char c[5] = "world";strcat(a,c);//数组的值为helloworld字符串的操作方式(皆基于'\0'):char * strcat(char *dest,const char *str);//字符串粘接char * strlen(const char *str);//求字符串元素的个数char * strcpy(char *dest,const char *str);//字符串拷贝char * strncpy(char *dest,const char *str,size_t size);char * strcmp(const char *dest,const char *str);//字符串比较char * strncmp(const char *dest,const char *str,size_t size);

二维数组:

用于装一维数组的数组
逻辑抽象为二维数组,本质上的存储方式都是一维的

example:auto int a[2][3] = {{1,2,3},{4,5,6}};//存储类型 数据类型 数组名 [下标1][下标2]//下标1表示可以装几个一维数组//下标2表示该二维数组的一维数组可装多少个元素 a== &a[0][0] == a[0] 

结构体:

为了描述世间的复杂事物而存在的

struct stu{    int num;    char name[10];    char sex;};struct stu student = //赋值方式一{    .num = 1,    .name = "jack",    .sex = 3,};struct stu student = //赋值方式二{    1,    "jack",    3,};  student.num = 5;    //赋值方式三typedef struct stu  //typedef 为该结构体 取别名为tt{    int num;    char name[10];    char sex;} tt;typedef struct stu{    int num;    char name[10];    char sex;} tt,*point;struct stu *p;point p;
0 0
原创粉丝点击