» 首页 » 电脑_数码 » 编程 » 关于 C 语言的字符指针数组

关于 C 语言的字符指针数组

定义一个字符指针数组,类似如下的源代码:

char *p[2];
p[0]="123456";
p[1]="7890ab";

这居然是合法的,感觉用这种方式比用字符串数组好得多,但是,教材上涉及到字符串处理的程序,都没有这么用,为什么呢??这方法有什么缺点吗??


这居然是合法的?
这本来就是合法的。而且通常都是这么写的,没有什么缺点。

这是指针的数组,不是字符的数组。
p[0] = "123456" 是说把字符串 "123456" 在内存中的首地址赋给指针 p[0]

这段程序就相当于:

char p[2][];

p[0] = "123456";
p[1] = "7890ab";
这是因为int型和char型进行了互转,你这样定义其实参数是一个数值,而不是字符,如果是字符中间应用逗号进行间隔,否则你试一下就会出错。
为什么叫居然呢,确实,本来就合法呀
书上什么都有,再仔细看看

 相关问题
·关于 C 语言的字符指针数组
·北京悦来旅店 最靠近北大的能告诉我下具体位置吗
·★★北京哪里学平面设计口碑比较好??及其介绍★★
·应用程序的问题
·为什么很多网页的后缀没有.htm .asp .php啊
·vb字符串函数更换模版中的符号
·我用ASP编的网站
·急:我的SQL SEAVER数据库连接错在哪里?
·VB与串行通信编程实例
·ASP初级代码求助
·delete 功能和 析够函数 作用相同??????
·学习JAVA该如何起步?(没编程基础)
·哪能买到西门子S7-400的USB接口的编程电缆
·华中科技大学有关于Java的培训班吗
·编写一个函数,输入一个4为数,输出它,但2个数字之间要...

 《关于 C 语言的字符指针数组》答案收集时间:2006-08-24 20:21:56



©2007 电脑技术问答录