C++程序设计:用指针遍历数组

需积分: 46 83 下载量 183 浏览量 更新于2024-08-18 收藏 8.66MB PPT 举报
"C++程序设计中的指针用于输出数组元素" 在C++编程中,指针是极其重要的一个概念,它允许我们间接访问内存中的数据。在给定的程序示例中,展示了如何使用指向数组的指针变量来输出数组的所有元素。这两个示例都实现了相同的功能,但采用了不同的方法。 首先,我们来看第一个示例: ```cpp void main(void) { int a[10], i; int *p; for (i=0; i<10; i++) cin>>a[i]; for (p=a; p<a+10; p++) cout<<*p<<'\\t'; } ``` 在这个例子中,首先声明了一个整型数组`a`和一个整型指针`p`。数组`a`包含10个元素,用户可以通过`cin`输入这些元素。然后,指针`p`被初始化为数组`a`的首地址,即`p = a`。接下来的循环中,指针`p`从数组的起始位置开始,每次循环增加1,直到`p`到达数组的末尾`a+10`。在循环内部,`*p`表示指针所指向的值,也就是数组中的元素,将其输出并添加一个制表符分隔。 第二个示例则采用了一种稍微不同的方式来实现相同的目标: ```cpp void main(void) { int a[10], i; int *p=a; for (i=0; i<10; i++) cin>>a[i]; for (i=0; i<10; i++) cout<<*p++<<'\\t'; } ``` 在这个版本中,指针`p`在声明时就直接被赋值为`a`,然后在输出元素的同时,使用后缀自增操作符`++`将指针移动到下一个元素。这样,每次循环时,`*p`会输出当前指针所指向的元素,然后`p`自动递增,指向数组的下一个元素。 这两个示例都体现了C++中指针的强大功能,能够灵活地遍历和操作数组。值得注意的是,C++标准规定,`main`函数的返回类型应该是`int`,而不是`void`,因此在实际编程中,应该修正`main`函数的定义。 C++语言的发展历史可以追溯到C语言,由Dennis Ritchie和Brian Kernighan在B语言基础上设计。C++是在C语言的基础上增加了面向对象的特性,使得它成为一个功能更加强大且灵活的编程语言。C语言以其简洁的语法、高效的执行性能和良好的可移植性而受到广泛欢迎。C++则在此基础上增加了类、模板、异常处理等高级特性,使得软件开发更加模块化和易于维护。 在学习C++时,理解指针的概念至关重要,因为它们是C++中许多高级特性的基础,如动态内存分配、函数指针、迭代器等。虽然对于初学者来说,指针可能较为复杂,但一旦掌握,就能更好地利用C++的强大功能。