学习C的第十天
来源:互联网 发布:汇通网财经日历 数据 编辑:程序博客网 时间:2024/06/05 23:46
指针(1)
指针的定义:指针就是地址,而地址就是内存单元的编号(不是编码 ASCII中的是编码)
/*指针的基本表示。*/#include <stdio.h>int main(void){ int * p; /* int *表示p变量存放的是int类型变量的地址; 同样double *存放的是双精度浮点数类型变量的地址, p表示变量名称。 */ int i = 5; p = &i; // &表示取地址符,取得i在内存中所占用的地址 printf("%d\n", *p);//*p 表示以p的内容为地址的变量 return 0;}/*输出结果:5Press any key to continue*/
/*指针的常见错误。*/#include <stdio.h>int main(void){ int * p; int i = 5; *p = i; //此时p中是垃圾值代表着另一个变量的地址 不能这就样赋值。 printf("%d\n", *p); return 0;}
/*用函数交换两个数的值*/#include <stdio.h>void huhuan_1(int , int){ int i, j; int t; t = i; i = j; j = t; return;}int main(void){ int a = 5; int b = 3; huhuan_1(a, b); //这函数只是在内部将两个形参互换,实参并没有真正的进行互换。 printf("%d %d\n", a, b); return 0;}/*5 3Press any key to continue*/
/*用函数交换两个数的值*/#include <stdio.h>void huhuan_2(int * i, int * j){ int * t; t = i; i = j; j = t; return;}int main(void){ int a = 5; int b = 3; huhuan_1(&a, &b); /*i 代表的是a的地址是一个16进制的数据,j 代表的是b的地址 在函数中只是将a的地址换给了j,b的地址换给了i对a与b的值没有影响。*/ printf("%d %d\n", a, b); return 0;}/*5 3Press any key to continue*/
/*用函数交换两个数的值*/#include <stdio.h>void huhuan_3(int * i, int * j){ int t; t = *i; *i = *j; *j = t; return;}int main(void){ int a = 5; int b = 3; huhuan_3(&a, &b); //*i指向的是a可以说是i地址内的内容,所以可以进行互换了 printf("%d %d\n", a, b); return 0;}/*3 5Press any key to continue*/
初看指针总结:指针相当于邮箱编号,而邮箱内部就是特定的信封(变量),我们可以通过指针找到我们想要的变量。可以在函数中改变主函数中的实参。
0 0
- 学习C的第十天
- 学习C的第十一天
- C语言学习第十天(重要:C的灵魂)
- 学习的第十天
- C语言学习第十一天(重要:C的灵魂)
- C语言学习第十一天(重要:C的灵魂)
- 【C语言的学习】第十回合:数组大集合
- C语言第十天
- C第十天
- c/c++第十天
- 学习springmvc的第十天(保存)
- 程序学习第十天
- Java学习第十天
- C#学习第十天
- .net学习第十天
- JAVA学习第十天
- rhce学习第十天
- 第十天学习笔记
- 【HTML5】SVG
- 6.5.3
- Java中异常概述
- 专访俞岳:华为如何构建新一代 PaaS 平台
- 【备忘】安卓之微信项目开发实战教程+源码 下载
- 学习C的第十天
- springMVC3学习(4)--注解式控制器
- 位运算应用
- 数据和C(2)
- NoSQL学习笔记(二)之CAP理论
- 【高级特性】String,StringBuffer,StringBuilder
- JDK自带VM分析工具jps,jstat,jmap,jconsole
- WebView
- docker安装(二)