`
61party
  • 浏览: 1063609 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

数组-指针-引用

阅读更多
一、指针的概念

指针是内存中的地址。

1、语法:类型 * 变量名
这里的类型是定义了这个指针指向的变量类型。

2、指针的运算符(*和&)
&取地址符
例如:
int counta=100;
int * mm;
mm=&counta;
假设counta所在地址是2000,这是候m=2000。
#include <iostream.h><br> void main()<br> {<br> int counta=100;<br> int * mm;<br> mm=&amp;counta;<br> cout }<br>*返回这个地址的值,与&amp;正好相反。<br> #include <iostream.h><br> void main()<br> {<br> int p,counta=100;<br> int * mm;<br> mm=&amp;counta;<br> p=* mm;<br> cout }<br> 3、指针的赋值<br><br> #include <iostream.h><br> void main()<br> {<br> int x;<br> int * p1,* p2;<br> p1=&amp;x;<br> p2=p1;<br> cout }<br><br> 结果:0x0012FF7C<br> 4、指针的运算<br> 指针的++与--是将指针的地址移动所属变量类型位数。<br><br> char 8<br> int 16<br> long 32<br> float 32<br> double 64<br> 5、指针与数组<br><br> 数组声明:类型 变量名[长度]<br><br> 没有下标的“一维”数组名就是一个指向该数组第一个元素的指针。<br><br> #include <iostream.h><br> void main()<br> {<br> int x[3]={1,2,3};<br> int * p1;<br> p1=x;<br> cout }<br> a、等价关系:<br><br> 如:char c[10];<br> c 和 &amp;c[0] 是等价的。<br><br> 再如:char c[2][3];<br> c 和 &amp;c[0][0] 是等价的。<br> *(c+12) 和 &amp;c[1][2] 是等价的。<br><br> b、数组与指针的关系<br><br> 1&gt;一维数组的指针<br><br> #include <iostream.h><br> void main()<br> {<br> int x[2]={1,2};<br> int * p1;<br> p1=x;<br> cout cout }<br><br> 2&gt;二维数组的指针<br><br> #include <iostream.h><br> void main()<br> {<br> int<br> x[2][3]={1,2,3,4,5,6};<br> //int x[2]={1,2};<br> int * p1;<br> p1=&amp;x[0][0]; //二维数组给指针不能用"p1=x"这个来赋值,只能是“p1=x[2]”<br> cout cout cout cout cout cout cout cout cout cout cout cout //规律:* (p1+((1*3)+2))<br> }<br><br> 思考:指针是地址,那么如果想得到某地址的变量用什么方法。<br><br> 二、将引用和指针相比较<br><br> 引用是变量的别名。<br><br> #include <iostream.h><br> void main()<br> {<br> int * p1,a=100;<br> int &amp; y1=a; //必须直接赋值<br> p1=&amp;a;<br> y1=a;<br> cout cout }<br><br> 指针和引用可以达到同样的效果。<br><br> #include <iostream.h><br> void main()<br> {<br> void funca(int &amp; vala);<br> void funcp(int * valp);<br> int a=100,b=100;<br> int &amp; y1=a; //必须直接赋值,而且只能赋值一次<br> funca(a);<br> funcp(&amp;b);<br> cout cout }<br> void funca(int &amp; vala)<br> {<br> vala=200;<br> }<br> void funcp(int * valp)<br> {<br> * valp=500;<br> }<br><br> 三、*和&amp;的用途,避免这些符号在使用上发生混淆<br><br> 1、*的作用:<br><br> 1&gt;乘号<br> 2&gt;指针定义符号<br> 3&gt;返回某个地址的值<br><br> 2、&amp;的作用:<br><br> 1&gt;位运算中的“与”<br> 2&gt;取地址符<br> 3&gt;引用<br></iostream.h></iostream.h></iostream.h></iostream.h></iostream.h></iostream.h></iostream.h></iostream.h>
分享到:
评论

相关推荐

    结构体变量引用-数组-指针

    #include using namespace std; //自定义结构体类型 struct date { int month; //结构体变量名定义 int day; int year; }; struct teacher { int num; char name[20]; struct date birthday;......

    第9章 指针和数组-3指针和一维数组之间的关系1

    第9章 指针和数组——指针和一维数组之间的关系C语言程序设计第9章 指针和数组一维数组元素的引用数组名代表数组的首地址&a[0]a+1不是加上1个字节,取决于a

    第四章 数组、指针与引用(计算机等级考试二级C++).pdf

    第四章 数组、指针与引用(计算机等级考试二级C++) 第四章 数组、指针与引用(计算机等级考试二级C++)

    C++第4章_数组与指针(C++课件,中南大学)

    1 数组及其简单应用 2 指针及其简单应用 3 指针与数组 4 字符串 5 指针数组与命令行参数 6 引用

    C语言程序设计-指针与数组.pptx

    通过指针引用数组元素如果指针变量p指向数组中的一个元素,则p+1指向同一数组中的下一个元素。 2 指针与数组 如果p的初始值为&a[0],则: p+i和a+i就是a[i]的地址,或者说它们指向a数组的第i个元素。 *(p+i)或*(a+i)...

    指针数组和数组指针的区别.doc

    数组指针(也称行指针) 定义 int (*p)[n]; ()优先级高,首先说明p是一个指针,指向一个整型的一维数组,这个一维数组的长度是n,也可以说是p的步长。也就是说执行p+1时,p要跨过n个整型数据的长度。 如要将二维数组...

    面向对象程序设计-数组 指针 引用PPT课件.pptx

    面向对象程序设计-数组 指针 引用PPT课件.pptx

    二维数组和指针

    关于二维数组和指针的介绍,非常好! 二维数组a由若干个一维数组组成在C语言中定义的二维数组实际上是一个一维数组,这个一维数组的每一个成员又是一个一维数组。如以上定义的a数组,则可视a数组由a[0]、a[1]、a[2]...

    C/C++ 数组和指针及引用的区别

    C/C++ 数组和指针及引用的区别 1.数组和指针的区别 (1)定义 数组是一个符号,不是变量,因而没有自己对应的存储空间。但是,指针是一个变量,里面存储的内容是另外一个变量的地址,因为是变量所以指针有自己的...

    c语言利用指针求数组的最大值与最小值

    c语言利用指针求数组的最大值与最小值,下载资源,数组可扩展。

    清华大学计算机课程之《C++程序设计》

    ◇ 第七章 指针与引用 - 课前索引 - 第一节 指针变量的定义与使用 - 第二节 动态内存分配 - 第三节 指针运算 - 第四节 指针与常量 - 第五节 指针作函数参数 - 第六节 指针与数组 - 第七节 函数指针 - 第八...

    第8章-指针 -41

    第8章 善于利用指针8.1 指针是什么8.2 指针变量8.3 通过指针引用数组8.4 通过指针引用字符串8.5 指向函数的指针8.6 返回指针值的函数8.7 指

    第6节-指针.pdf

    总结:指针是一个变量,存放内存单元的地址,指针类型决定了指针解引用的时候有多大的权限,指针运算可以改变指针变量的地址,指针和数组是紧密相关的,二级指针是指针变量的指针,指针数组是一个数组,其中每个元素...

    php数组指针操作详解

    数组指针的操作: 移动数组指针的操作: Next() 向下 同时会获得当前元素的值。 Prev() 向上同时会获得当前元素的值。 End() 移动到最后一个元素单元 获得最后一个元素的值 Reset() 移动到第一个单元 获得第一个元素...

    C++程序设计:第4章 数组指针和引用.ppt

    C++程序设计:第4章 数组指针和引用.ppt

    指针、数组、引用

    介绍了数组、引用与指针之间的不同和联系。

    程序设计-通过指针引用数组元素.pptx

    程序设计基础

    C编程之字符串与指针教程

    ● 数组和指针之间的关系 ● 引用的概念及声明方法,关于使用引用的几点初步建议 ● 如何在本地C++程序中给变量动态分配内存 ● 如何在CLR 程序中动态分配内存 ● 跟踪句柄和跟踪引用的概念,CLR 程序...

    c指针与数组

    非常经典,很好的说明了一维数组,二维数组与指针的关系,如何引用数组的的元素,以及地址表示, 总之,非常清楚了

    php数组指针函数功能及用法示例

    数组指针函数有reset(),prev(),current(),next(),end(),key(),each() 其中reset(),prev(),current(),next(),end(),都是只与数组的值有关的函数,key()只与数组键,有关的函数,each()可以获得数组的值和键 reset...

Global site tag (gtag.js) - Google Analytics