[C++基础]027_数组和指针是不等价的一个实例
2012-10-14 00:09
417 查看
file1.c
file2.c
该程序可以编译通过,但运行时会出错。为什么呢?原因是,在另一个文件中用 extern int *arr来外部声明一个数组并不能得到实际的期望值,因为他们的类型并不匹配。所以导致指针实际并没有指向那个数组。注意:一个指向数组的指针,并不等于一个数组。修改:extern int arr[]。(参考:ISO C语言 6.5.4.2 节)
int arr[80];
file2.c
extern int *arr; int main() { arr[1] = 100; printf("%d\n", arr[1]); return 0; }
该程序可以编译通过,但运行时会出错。为什么呢?原因是,在另一个文件中用 extern int *arr来外部声明一个数组并不能得到实际的期望值,因为他们的类型并不匹配。所以导致指针实际并没有指向那个数组。注意:一个指向数组的指针,并不等于一个数组。修改:extern int arr[]。(参考:ISO C语言 6.5.4.2 节)
相关文章推荐
- C/C++基础知识总结——数组、指针域、字符串
- Unix/Linux C++应用开发-C++基础概念"数组、指针和字符串"
- 【C++基础】 指针&字符串&数组
- CPP-基础:C/C++数组名与指针的区别
- c/c++ 基础(三) 指针与数组
- C++基础学习系列第一部分——数组和指针
- C/C++基础知识(一)数组和指针
- C++基础之指针数组和数组指针(重点是后面的名词)
- C++基础概念-数组、指针和字符串
- c++用指针交换数组的实例讲解
- [C++基础]那些容易被混淆的概念:函数/数组指针-指针函数/数组,类/函数模板-模板类/函数
- 实例:sizeof一个指针或者一个数组
- C++编程实例-数组、指针及引用
- 【C/C++语言基础学习】在主函数的定义的指针数组、二维数组通过三级指针在被调用函数分配内存
- 挑战30天C++入门极限-C/C++中利用数组名/指针进行排序实例
- C++ 基础4:数组和指针
- C++基础积累(2)指针与数组、指针与函数关系详解
- 【基础】关于数组与多态不能合用的一个实例
- C/C++——声明一个到字符的指针,包含10个整数的数组,到包含10个整数的数组的引用,到字符串的数组的指针,到字符的指针的指针...
- C++基础---指针数组与数组指针