指针和数组类型混用 注意区别

来源:互联网 发布:mysql实现读写分离 编辑:程序博客网 时间:2024/06/15 07:56

 1、一种情况:

                  在一个文件中包含定义: char   a[ ] = "abcdefg" ;

                 在另一个文件中包含声明:extern char  * a ;

                       尽管数组与指针很相似,但是毕竟是不同的,数组a [ ]是属于“字符数组”,

                  而指针a是“字符指针”。问题就是这两种情况对a的声明的存储空间的方式是不同的,

     它们无法以一种和于情理的方式共存。因为本意两者指的应该是同一个东西,但是定义和声明不一样

                  就会产生错误。更正方法:

                           chara[ ] = "abcdefg" ;  //文件一

                           externchar a [ ];         //文件二

                                             更正方法二:

                           char*a = "abcdefg";         //文件一

                           externchar *a;                  //文件二

                  只要两者类型保持一致就可以了......


0 0
原创粉丝点击