【Linux C 王者归来】【第四章】【指针与字符串】
2016-04-25 20:12
351 查看
1.指针操作,防止不同名称指针指向同一个位置,造成陷阱
2.数组的指针:int (*p)[10] p是一个指针,指向是个元素的数组,+1时,是数组的整个大小
3.指针的指针:int **p p指向一个指针,这个指针指向int型
4.VOID* 指针的使用,不使用明确类型,会报错的
5.函数指针: int (*p)(int,int)
6.函数指针,回调函数
typedef int (*cmp)(int,int)
extern int A(cmp func)
int A(cmp func)
{
(*func)(1,2);
}
7.指针数组:int *p[10] 每个元素都是指针
8.入参是数组可以这么写 A(VOID *B[]) 相当于指针的指针
9.函数指针数组:int (*f[10])[int,int],定义了数组f,内容为返回int的函数指针
10.char a[]="asdfg" 相当于 strcpy(a,p)
11.char *p="asdfg" 指向只读区域,在定义一个地址也是相等的
——————————————————————————————————
const的用法
1.const int a 和 int const a是一样的
2.const int *p,p 指向一个整形变量,该变量不可改变(那改变的能赋给他么,可以赋给P108,但是const不能赋给非const),指针可以改变
3.int const *p,同上
4.int *const p 指针p不可变,但是其指向的单元的内容可以变
(目前看,应该是以*为戒,*后面对应指针,前面对应 类型)
5.正确使用const,节约大量时间,不变的都定义成const
2.数组的指针:int (*p)[10] p是一个指针,指向是个元素的数组,+1时,是数组的整个大小
3.指针的指针:int **p p指向一个指针,这个指针指向int型
4.VOID* 指针的使用,不使用明确类型,会报错的
5.函数指针: int (*p)(int,int)
6.函数指针,回调函数
typedef int (*cmp)(int,int)
extern int A(cmp func)
int A(cmp func)
{
(*func)(1,2);
}
7.指针数组:int *p[10] 每个元素都是指针
8.入参是数组可以这么写 A(VOID *B[]) 相当于指针的指针
9.函数指针数组:int (*f[10])[int,int],定义了数组f,内容为返回int的函数指针
10.char a[]="asdfg" 相当于 strcpy(a,p)
11.char *p="asdfg" 指向只读区域,在定义一个地址也是相等的
——————————————————————————————————
const的用法
1.const int a 和 int const a是一样的
2.const int *p,p 指向一个整形变量,该变量不可改变(那改变的能赋给他么,可以赋给P108,但是const不能赋给非const),指针可以改变
3.int const *p,同上
4.int *const p 指针p不可变,但是其指向的单元的内容可以变
(目前看,应该是以*为戒,*后面对应指针,前面对应 类型)
5.正确使用const,节约大量时间,不变的都定义成const
相关文章推荐
- CentOS7安装vncserver(启动失败及连接黑屏解决办法)
- CentOS下安装setuptools、pip和virtualenv
- CentOS 6.5环境使用ansible剧本自动化部署Corosync + pacemaker环境及corosync常用配置详解
- Linux 大于2T 解决方法
- CentOS 6.5环境使用ansible剧本自动化部署Corosync + pacemaker环境及corosync常用配置详解
- 试试Linux下的ip命令,ifconfig已经过时了
- linux 虚拟机详细搭建过程
- linux读写锁
- Linux内核分析期末总结
- linux jdk install source code
- sysstat工具包提供的主要命令
- Linux目录权限
- sysstat工具的用法
- Linux 系统应用编程——线程基础
- Linux 系统应用编程——线程基础
- Linux 系统应用编程——线程基础
- Linux 系统应用编程——进程基础
- Linux拷贝文件,略过某些文件或目录
- 在centos7和centos6下安装scrapy
- CentOS配置Tengine