黑马程序员学习笔记-C指针小结

黑马程序员学习笔记-C指针

1、 指针简介:

指针是C语言中非常重要的数据类型,是C语言的精华

2、 指针变量定义:

格式:类名标识符 *指针变量名;

指针变量只能存储地址

指针就一个作用:能够根据一个地址值,访问对应的存储空间

指针变量p前面的int:指针变量只能指向int类型的数据

3、实例:

4、 注意点:

指针变量只能存储地址。指针变量未经初始化,不要拿来间接访问其他存储空间。指针变量的初始化可以int *p = &a;也可以拆分成两句:int *p; p =&a;。定义变量时的*仅仅是一个标志,没有其他特殊含义,赋值等其他的时候的*代表访问指针变量所指向的存储空间,例如:*p
= 20。

5、实例:求两个数的和与差,

6、指针与数组,实例:利用指针实现数组的便利:

数组元素的访问方式:

Int age[5];

Int *p;

P =&age;

1>数组名[下标]   age[5]

2>指针变量名[下表]  p[2]

3>*(p+i)

实例:在指针做函数参数函数中访问数组

7、指针与字符串

注意:利用数组定义字符串,是可以改的,利用指针定义字符串,是不可改的

8、存储字符串数组:实例

9、字符串的输入:

黑马程序员学习笔记-C指针小结

时间: 2024-10-22 04:45:42

黑马程序员学习笔记-C指针小结的相关文章

黑马程序员学习笔记_OC之给NSString增加分类

---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>.<a href="http://www.itheima.com"target="blank">.Net培训</a>.期待与您交流! ---------------------- 黑马程序员学习笔记_OC

黑马程序员学习笔记2014/7/5

观看视频:011_标识符_黑马程序员_Java基础视频.avi Java语言的基础组成 关键字.标识符.注释.常量和变量.运算符.语句.函数.数组.   关键字     标识符 1.在程序中自定义的一些名称 2.由26个英文字母大小写,数字,0-9符号 :_ $ 组成 3.定义合法标识符的规则: a.数字不可以开头 b.不可以使用关键字 4.Java中严格区分大小写 5.注意:在起名的时候尽量起一个有意义的名称       观看视频:012_常量_黑马程序员_Java基础视频 常量与变量 Jav

黑马程序员学习笔记-OC之foundation框架

黑马程序员学习笔记-OC之foundation框架 1.简介:foundation框架是其它所有ios框架的基础,包含了很多常用类型,结构体.枚举.类等. 2. 结构体:NSRange表示范围的结构体. NSPoint/CGPoint表示坐标点的结构体 NSSize/CGSize表示宽高的结构体 NSRect/CGRect表示坐标点+宽高的结构体 3. 类字符串:NSString  字符串类 NSMUtableString  易变字符串类 NSArray         数组类 NSMUtabl

黑马程序员学习笔记--------C语言变量类型,结构体,枚举

本章学习的知识是定义结构体,枚举等自定义的数据类型,已经宏命令,变量类型等细小的知识点,在开始本章的新知识学习之前首先我们要明白的是C语言有丰富的数据类型和运算符,因此计算能力非常强大,计算过程中使用的值一般用变量来存储.变量也是有分类型的,不同类型的变量有不同的存储类型.不同的生命周期.不同的作用域,C语言也提供了一些关键字来设置变量的属性(比如设置存储类型.生命周期). 一.变量类型 变量分为全局变量和局部变量. 首先说明一下局部变量的特点 1> 定义:在函数内部定义的变量,称为局部变量.形

黑马程序员-学习笔记 字符流相关

1.FileWriter FileWriter fw = new FileWriter("demo.txt"); fw.writer("abcde");fw.flush();fw.close(); writer()方法只是把数据写入到内存(流)中:flush():把当前流中的数据刷入到目的地中(demo.txt)中. 如果 fw(流)不关闭,使用writer()方法重复写入数据. close():关闭此流,但要先刷新一次缓存中的数据. flush()和close()

马程序员学习笔记——红黑树解析四

---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 本篇是将上面三篇的理论知识转化成代码,java实现 首先,看一下算法导论里的伪代码 一.左旋 The pseudocode for LEFT-ROTATE assumes that right[x] ≠ nil[T] and that the root's parent is nil[T].(伪代码的左旋方法中假设X的右孩子不为空) LEFT-

马程序员学习笔记——红黑树解析二

---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 四.树中删除元素 1.先找到需要删除的元素. 2. 2.1如果被删元素没有子元素,那么直接用NIL节点代替他: 2.2如果被删元素只有一个子元素,那么直接用这个子元素代替他: 2.3如果被删元素有两个子元素,那么就用左子元素中的最大元素或者右子元素的最小元素代替他. 比如说原来要删除的元素是N,N有两个分支,其中P是N左分支中的最大元素,那么就

马程序员学习笔记——红黑树解析三

---------------------- ASP.Net+Unity开发..Net培训.期待与您交流! ---------------------- 六.树的前序.中序.后序 前序遍历(根左右): 1.访问根节点 2.前序遍历左子树 3.前序遍历右子树 中序遍历(左根右): 1.中序遍历左子树 2.访问根节点 3.中序遍历右子树 后序遍历(左右根): 1.后序遍历左子树 2.后序遍历右子树 3.访问根节点 扩展:已知前序.中序遍历,求后序遍历? 例: 前序遍历: GDAFEMHZ 中序遍历:

黑马程序员-学习日记(面向对象)

------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 1.面向对象  理解面向对象  面向对象是相对面向过程而言,面向对象和面向过程都是一种思想. 面向过程: 强调的是功能行为.代表语言:C语言. 例子:把大象装进冰箱 1.打开冰箱门.2.放入大象.3.关上冰箱门."打开"."存储"."关上"都是功能行为,在代码中的直观体现就是函数或者方法,这就是一种面向过程的以功能行为为主体的思想体现. 面向对