C语言基础--指针与结构体

指针:一个变量的地址称为该变量的“指针”,如果有一个变量专门用来存放另一变量的地址(即指针),则它称为“指针变量”。即:指针是一个地址,指针变量是存放地址的变量。

(1)定义指针变量的一般形式为:基类型 *指针变量名,如:int *pointer_1;float *pointer_2;char *pointer_3等,在定义指针变量时必须指定基类型。

(2)两个相关的运算符:&:取地址运算符,使一个指针变量得到另一个变量的地址;*:指针运算符,取指针所指向的对象的内容,如:&a为变量a的地址,*p为指针变量p所指向的存储单元的内容。

(3)int i,j;

int *pointer_1,*pointer_2;

pointer_1=&i;

pointer_2=&j;

表示将变量i的地址存放到指针变量pointer_1中,因此pointer_1就“指向”了变量i,j与此类似。指针变量前面的*表示该变量的类型为指针型变量,指针变量名为pointer_1、pointer_2

四、结构体

结构体类型变量的定义方法:

(1)先声明结构体类型再定义变量,如

struct student student1,student2;

struct student

{int num;

char name[20];

char sex;

int age;

};

(2)在声明类型的同时定义变量,如

struct student

{int num;

char name[20];

char sex;

int age;

} student1,student2;

一般形式为:

struct 结构体名

{

成员表列

}变量名表列;

(3)直接定义结构体类型变量

一般形式为:

struct

{

成员表列

}变量名表列;

除了可以直接使用C提供的标准类型名(如int、char、float、double、long等)和自己声明的结构体、共用体、指针、枚举类型外,还可以用typedef声明新的类型名来代替已有的类型名。例如:typedef int INTEGER; typedef float  REAL;指定用INTEGER代表int类型,REAL代表float。这样,以下两行等价:①int i,j; float a,b; ②INTEGER i,j; REAL a,b;

用typedef struct声明结构体类型:

typedef struct

{int month;

int day;

int year;

}DATE;

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值