c语言指针与结构体

*:指针运算符,指向对象的值(地址的指令

&:取地址运算符,(物理地址,实际地址

size of:用于获取变量或者数据类型的长度                                         

只有相同类型的指针变量才能相互赋值

空指针用NULL

字符串结束标志'\0'

1.指针交换

从键盘输入两个整数到a、b,按由大到小输出

#include<stdio.h>

void main( )

{

int a,b,*pa=&a,*pb=&b,*p;                          /*定义指针变量pa、pb,并进行初始化*/

scanf("%d%d",&a,&b);

if(*pa<*pb)

p=pa;                                                           /*进行指针交换*/

pa=pb;

pb=p;

}

printf("\n a=%d,b=%d\n",a,b);

printf("\n max=%d,min=%d",*pa,*pb);        /*pa指向大数,pb指向小数*/

}

二级指针的定义:数据类型      * *指针变量(int a,*p,**pp;)

一级指针与二级指针的区别:p直接指向a(p=&a),*p是一级指针引用;pp直接指向p,再通过p指向a,pp间接指向a,**p是二级指针(pp只能指向指针变量)

指针函数的定义:类型标识符   *函数名(形式参数表)【int  *fun(int a,int b)       {函数体语句}】

返回指针或地址语句:return(& 变量名);或 return(指针变量)

住:指针函数的返回值一定是地址,并且返回值的类型要与函数类型一致

字符串函数strcat( ),strcpy( )

动态存储分配函数malloc( ),calloc( )

指向函数的指针变量的定义:类型标识符  (* 指针变量名)();【int     (*p)();

猜你喜欢

转载自www.cnblogs.com/296389183yy/p/10533492.html