<<征服C指针>>学习笔记
来源:互联网 发布:魔侠传 网络异常 编辑:程序博客网 时间:2024/06/05 18:55
1.什么是指针?
在C语言标准中最初出现”指针”一词的部分,有这样一段话:
{
指针类型可由函数类型\对象类型\或不完全的类型派生,派生指针类型的类型称为引用类型.
指针类型描述一个对象,该类对象的值提供对该引用类型实体的引用.
由引用类型T派生的指针类型有时称为”(指向)T的指针”.
从引用类型构造指针类型的过程称为”指针类型的派生”.这些构造派生类型的方法可以递归的应用.
}
提及”类型”,我们首先想到的是”int类型”\”double类型”……同样,C中也存在”指针类型”这样的类型.
“指针类型”:
{
并不单独存在,它是由其他类型派生而成的.即实际上存在的类型是”指向int的指针类型”\”指向double的指针类型”….
也存在”指针类型变量”和”指针类型的值”.
}
2.首次接触指针.
以实际代码输出指针的值.
#include <stdio.h>int main(void){ int hoge = 5; int piyo = 10; int *hoge_p; //输出每个变量的地址 printf("&hoge: %p\n", &hoge); printf("&piyo: %p\n", &piyo); printf("&hoge_p: %p\n", &hoge_p); //将hoge的地址赋予hoge_p hoge_p = &hoge; //至此,我们认为"hoge_p指向hoge" printf("hoge_p: %p\n", hoge_p); //通过hoge_p输出hoge的内容 printf("*hoge_p: %d\n", *hoge_p); //通过hoge_p修改hoge的内容 *hoge_p = 10; printf("hoge: %d\n", hoge); return 0;}
要点:
{
对变量使用&运算符,可取得该变量的地址.这个地址称为指向该变量的指针.
指针变量hoge_p = &hoge 时,称 hoge_p指向hoge.
对指针变量运用*运算符,等同于它指向的变量.如果hoge_p指向hoge,*hoge_p == hoge.
}
3.指针声明.
常见的C的声明像:
int hoge;
使用”类型 变量名”的形式.
而”指向int的指针”类型的变量,常采用这样的声明方法:
int *hoge_p;
这里,int* 是类型(指向int的指针类型),hoge_p为变量名,
而
int* hoge_p;
这种书写方式虽符合”类型 变量名”的形式,但在同时声明多个变量的情况时会出现歧义,
int* hoge_p, piyo_p;
//声明两个”指向int的指针”? ——并不是.
- 征服C指针学习笔记
- <<征服C指针>>学习笔记
- 《征服C指针》笔记
- 征服c指针笔记
- 征服c指针阅读笔记
- 征服C指针笔记之关于指针
- 《征服C指针》读后笔记
- 征服C指针
- 征服C指针-NULL
- 征服C指针
- 《征服C指针》读书笔记
- 征服C指针-随记
- 征服C指针之关于指针学习第一步!!!
- 《征服C指针》作者语录
- [原]《征服C指针》读书笔记
- 征服C指针读书笔记 1 ----- 指针基本概念
- C 指针学习笔记
- C指针学习笔记
- 2434: [Noi2011]阿狸的打字机
- 《基于密度峰值的混合型数据聚类算法设计》-聚类效果彩色图
- 常考经典算法---动态规划(拼凑面额、背包问题)
- IT培训对Java学习的三条建议
- 字节对齐规则
- <<征服C指针>>学习笔记
- 云唯+CEO李宏洋谈:IT培训学费辣么贵还值得去吗?
- Retrofit2.0的使用之添加请求头
- XlistView
- DFS序的学习
- CSS3笔记——过渡 Transition
- 给定一个字符串s,请计算输出含有连续两个s作为子串的最短字符串。
- 完全背包
- Unity鼠标出屏幕后 摄像机跟随鼠标方向移动