C语言指针初探

原创 2015年07月09日 10:19:18

# include <stdio.h>

int main(void)

{

int * p;

int i = 3;

p = &i;

}

上面代码:

int * p:正解:p是变量的名字,int * 是数据类型,表示p变量存放的是int类型变量的地址

  错误理解:*p是变量名,它的数据类型是int类型

 p是变量名,int * 是它的数据类型,所谓int * 类型实际上就是存放int 变量地址的类型

p = &i; 1、p保存的是i变量的地址,所以取地址i就等同于p,即p指向i

    2、p不是i,i也不是p,因此修改i的值不影响p,修改p的值也不影响i

3、如果一个指针变量指向一个普通变量,则*指针变量     就完全等同于    普通变量,比如p指向i,则 *p 就完全等同于 i,*p变量 和 i变量 可以互换

4、* p:表示的以p的内容为地址的变量


指针和指针变量:

指针就是地址,地址就是指针,地址是内存单元的编号。指针就是一个值,相当于一个常量,所以没什么好说的;  

指针变量是存放地址的变量,它相当于数据类型的变量,所以研究的是指针变量;

但是要注意在我们叙述时,指针变量通常被简称为指针。

C语言指针教程----入门到精通<一>

有一个传说,指针是C语言的精髓;可同时,指针似乎也是C中很难理解的一部分。博主希望在自己复习的同时,写出一些学习心得和体会,供大家讨论。...
  • u014254779
  • u014254779
  • 2014年09月04日 12:39
  • 2493

从一个简单的例子深入看待c语言指针

今天我在写二叉树程序时遇到一个让我郁闷整晚的例子,现在终于想通了,特撰此博文,告诫自己及广大同道今后勿犯此错误! 我写了一个将字符串中括号去除的程序: #include char *RidBracke...
  • pq159753159
  • pq159753159
  • 2013年12月16日 01:25
  • 951

C语言:详解指针

指针应该算得上是c语言的精华,但也是难点。很多教程或者博客都有对其详细的讲解与分析。我这一节的内容,也是讲解指针,但我会尽量使用图解的方式,使大家很容易理解及掌握。 一、基本使用 先来看看下面的代码:...
  • sinat_27706697
  • sinat_27706697
  • 2015年08月22日 09:58
  • 21482

黑马程序员——C语言基础——指针编程练习题

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 今天复习了一下指针的相关知识,并且在网上搜了一道小的编程练习题,大概题意如下: 有n个整数,使...
  • Elors
  • Elors
  • 2015年06月01日 23:07
  • 1739

12.3 C语言指针的简单示例

前边我们提到了,指针的意义往往在小程序里是体现不出来的,对于简单程序来说,有时候用了指针,反而可能比没用指针还麻烦,但是为了让大家巩固一下指针的用法,我还是写了个使用指针的流水灯程序,目的是让大家从简...
  • softn
  • softn
  • 2016年07月07日 05:55
  • 499

c语言面试题 指针30个常错题型

来源:http://blog.chinaunix.net/u1/58640/showart.php?id=1354073 记下来以备不时之需。 1. char * const p; char cons...
  • hnust_xiehonghao
  • hnust_xiehonghao
  • 2013年12月28日 20:54
  • 20435

C语言复习 -- 多重指针

多重指针指的是在一条语句中有2个或以上的*。   代码如下: #include int main() {  int i[] = {10, 20, 30, 40, 50};  int *p...
  • edwzhang
  • edwzhang
  • 2012年02月01日 13:38
  • 2495

C语言中的指针(*p p &amp;p)

    在看博客时,无意看到了一篇关于C语言指针的博客议论。虽然写的内容不多,但是自己觉得还是有用,就记下来了。    学习C语言时,指针的学习是比较难的一部分,常常分辨不了*p   p    &p ...
  • rn7ps8bn
  • rn7ps8bn
  • 2009年09月03日 16:53
  • 4062

C语言指针表达式(图解)

C语言是软件编程的基础,不管你使用什么语言都会有必要用上它的时候,Android的原生开发NDK就是可以在Java层调用C/C++代码,iOS的objective-c也是在C语言上的一层封装实现的,想...
  • a5533348
  • a5533348
  • 2015年01月19日 13:55
  • 1385

C语言中的指针加减偏移量

 首先看一段程序:#include int main(){ int a[5] = {1, 2, 3, 4, 5}; int* p = (int*)(&a + 1); printf("%d, %d /n...
  • dobest9014
  • dobest9014
  • 2010年03月11日 15:29
  • 20474
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言指针初探
举报原因:
原因补充:

(最多只允许输入30个字)