Chinaunix首页 | 论坛 | 博客
  • 博客访问: 67168
  • 博文数量: 17
  • 博客积分: 400
  • 博客等级: 一等列兵
  • 技术积分: 195
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-02 21:02
文章分类
文章存档

2013年(2)

2012年(15)

最近访客

分类: C/C++

2012-05-07 20:21:09

作为第十章的指针是C语言中的难点,从第一第二节中首先了解到的是*,&这两个符号,可以说只要看到*这个符号,几乎可以肯定的就是这里运用到的是指针的知识点,在指针中总是反复提到的就是地址,int a=5;int *p=&a或者就是int a=5,*p;p=&a;这些种种很容易让人头大,简单的了解到的就是指针变量,整型变量,尤其注意的是其中的变量而非是常量,结合平时的作业,其中的选择题中很多题目考的就是关于变量常量的知识,就比如*p=5,这就是错的,因为*p是变量而5是常量,不能直接将一个常量赋值给一个变量,只要能过将*p,p,&a,a的概念弄清楚,基本的知识就算是掌握了,就可以读懂编写一些简单的程序:比如将两个数的值对调,在不用指针的时候:
#include"stdio.h"
void main()
{
    int a=5,b=8;
    int t;
    printf("a=%d,b=%d\n",a,b);
    t=a;
    a=b;
    b=t;
    printf("a=%d,b=%d\n",a,b);
}
如果用指针的话:
#include"stdio.h"
void main()
{
    int a=5,b=8;
    int *pa=&a,*pb=&b;
    int t;
    printf("a=%d,b=%d\n",a,b);
    t=*pa;
    *pa=*pb;
    *pb=t;
      printf("a=%d,b=%d\n",a,b);
}
可是我想这样编写是否正确???
#include"stdio.h"
void main()
{
    int a=5,b=8;
    int *p;
    printf("a=%d,b=%d\n",a,b);
    p=&a;
    a=b;
    b=*p;
    printf("a=%d,b=%d\n",a,b);
}
求意见。。。。。
阅读(2569) | 评论(7) | 转发(2) |
0

上一篇:VC++6.0

下一篇:关于指针

给主人留下些什么吧!~~

汪理清2012-05-13 19:07:26

怎么交换a,b的值?

xiaocaolu2012-05-12 12:15:46

并没有交换a、b的值。都输出8.

汪理清2012-05-09 20:34:28

lycusual: 有没有win7用的比较简单的c++的软件???
-----------------------------
你是说IDE吧?推荐CodeLite或者Code::Blocks,两者都记得下载带MinGW编译器的安装包。.....
这个我这水平能入门么???

lycusual2012-05-09 14:51:00

有没有win7用的比较简单的c++的软件???
-----------------------------
你是说IDE吧?推荐CodeLite或者Code::Blocks,两者都记得下载带MinGW编译器的安装包。

不要用turbo c和VC6,这都是那些不求上进的老师们误人子弟多年的破玩意儿,破到极点。

汪理清2012-05-08 21:02:46

是的,我自己后来写的那段代码是错的,应该不能被执行,再问下,有没有win7用的比较简单的c++的软件???我是初学者