6.1.2指向变量的指针变量 指针变量的定义 -用来存放数据地址的变量叫指针变量。指针 变量和其它类型的变量一样,也必须先定义 后使用。 - 定义格式: 数据类型*变量名[=地址表达式]: “数据类型”表示该指针可以指向何种类型的 数据,指针本身则是整型。“*”是一个说明 符,表示定义指针变量。 例如:intx,*pointer1;pointer1-=&x; 则pointer1表示x的内存地址
指针变量的定义 – 用来存放数据地址的变量叫指针变量。指针 变量和其它类型的变量一样,也必须先定义 后使用。 – 定义格式: 数据类型 *变量名[=地址表达式]; – “数据类型”表示该指针可以指向何种类型的 数据,指针本身则是整型。“*”是一个说明 符,表示定义指针变量。 – 例如:int x,*pointer1; pointer1=&x; 则pointer1表示x的内存地址。 6.1.2 指向变量的指针变量
练一练 ◆定义单精度浮点型变量a、指针变量p。 BACK ◆
练一练 定义单精度浮点型变量a、指针变量p
指针变量的引用 一1、与指针有关的两个运算符&和* (1)运算符& 取地址运算符,即取其操作数的内存地址。 一目运算符,优先级和结合性与+、-相同。 一般形式:&变量名或&数组元素名 如:&x 运算结果是x的地址 &a1运算结果是数组元素a[1]的地址 -例:定义intx,*y=&x, x的地址是3000,x的值是10,y=3000 思考:若x的值是100,y的值? BACK
指针变量的引用 – 1、与指针有关的两个运算符&和* – (1)运算符& 取地址运算符,即取其操作数的内存地址。 一目运算符,优先级和结合性与++、--相同。 一般形式:&变量名或&数组元素名 如:&x 运算结果是x的地址 &a[1] 运算结果是数组元素a[1]的地址 – 例:定义int x,*y=&x; x的地址是3000,x的值是10,y=3000 思考:若x的值是100,y的值?
(2)运算符* (间接)访问地址运算符,又称指针运算符, 取其变量的值。 一目运算符,优先级和结合性与++、-相同。 一般形式:*变量名 如:*p*q BACK
(2)运算符* – (间接)访问地址运算符,又称指针运算符, 取其变量的值。 一目运算符,优先级和结合性与++、--相同。 一般形式:*变量名 如:*p *q
2、指针指向对象(要访问的数据)的方法 (1)指针初始化 例:inta,*p=&a;/*指针p指向整型变量a*/ float x,y,*pl=&x,*p2=&y;/*指针pl和p2分 别指向实型变量x、y*/ intb[10],*q=b;/*指针q指向整型数组b*/ 2)用赋值语句给指针赋值 例:inta,b[l0],*p,*q p=&a, q-b; 注意:赋值语句中的指针前面不带 “*”号。 BACK
2、指针指向对象(要访问的数据)的方法 (1)指针初始化 例:int a,*p=&a; /* 指针p指向整型变量a */ float x,y,*p1=&x,*p2=&y; /* 指针p1和p2分 别指向实型变量x、y */ int b[10], *q=b; /* 指针q指向整型数组b */ (2)用赋值语句给指针赋值 例:int a,b[10],*p,*q; p=&a; q=b; 注意:赋值语句中的指针前面不带“*”号