请问char *是什么

[复制链接]
查看11 | 回复1 | 2011-7-23 17:08:51 | 显示全部楼层 |阅读模式
看书的时候发现指针数组这一章有一个程序代码。
m=sizeof(bname)/sizeof(char *);
补充下开头的定义。
char *bname[]={"pro","asdfew","qeqrrewr"};
bnam自然是一个用来保存字符串的指针数组,而这一句代码的作用应该是计算bname的字符串个数,我猜想char *是用来作为单位个数的存在,也就是用来表示一个指针数组中单个指针元素所占用的字节数,那么sizeof(bname)就是bname整个指针数组所包涵的字节数,除以单个指针元素所占用的字节数,就能得出m是指针数组中的元素个数,那么元素个数代表的就是字符串的个数。
可是char *的含义严谨一点来说是什么呢?

回复

使用道具 举报

千问 | 2011-7-23 17:08:51 | 显示全部楼层
char *就是表示一个指针,它代表的是一个字符所在的位置,或一个字符串的起始位置。bname是一个字符串数组,它的元素其实表示的是每个字符串的起始位置。所以,你那样理解是完全正确的。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行