社区
C语言
帖子详情
char类型作为循环下标
freeskyo
2010-06-24 07:40:24
for ( char i=0;i<20;i++ )
{
printf("i=%d\n",i);
}
为什么char数据类型可以作为循环下标.即=int功能.
...全文
346
23
打赏
收藏
char类型作为循环下标
for ( char i=0;i<20;i++ ) { printf("i=%d\n",i); } 为什么char数据类型可以作为循环下标.即=int功能.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
23 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lvshaoqing
2010-07-01
打赏
举报
回复
[Quote=引用 22 楼 freeskyo 的回复:]
引用 20 楼 pengzhixi 的回复:
结贴吧
想结贴,可没有理想的答案呀
[/Quote]
人家都说的这么明确了,难道你还不能结贴么。 char就是整数类型。 而数组的下标可以用整数类型。 整数类型不仅仅是int等。
freeskyo
2010-07-01
打赏
举报
回复
[Quote=引用 20 楼 pengzhixi 的回复:]
结贴吧
[/Quote]
想结贴,可没有理想的答案呀
晨星
2010-07-01
打赏
举报
回复
[Quote=引用 15 楼 lvshaoqing 的回复:]
引用 11 楼 lqbk1 的回复:
引用 7 楼 lvshaoqing 的回复:
引用 2 楼 oyster2008 的回复:
char就是整型
不要误人子弟!
char本来就是整型……
看《c与指针》去……
取值范围不同,汇编指令处理不同。 何来相同之理。 误人子弟!!!
[/Quote]
他说的“整型”是指“整数类型”的意思,而不是“int”。char当然不是int,就好比short、long也都不是int(尽管某些平台上他们可能一样长)。但他们同属于整数类型(或者说定点数),而非浮点类型。
pengzhixi
2010-07-01
打赏
举报
回复
结贴吧
晨星
2010-07-01
打赏
举报
回复
[Quote=引用 8 楼 freeskyo 的回复:]
先谢谢大家的回复。
有能从计算机原理或编译原理的角度作一下分析的吗?
[/Quote]
这没什么好分析的,'A'就是65,只不过在打印到屏幕或者打印机上时,常常根据“可读”的需要被显示成一个字母'A'。
就像我上面打的这些字,在内存中也都是整数数字,而不是以横竖撇捺的形式存在于内存中。至于这些整数所表示字符的点阵信息,那是字库关心的事。
cxxer
2010-06-28
打赏
举报
回复
char类型对象存储的是字符的ASCII码,是以整数的形式存储的。
yidasoft
2010-06-28
打赏
举报
回复
char类型在计算机中以ascii码表示
bobo364
2010-06-28
打赏
举报
回复
对于char型字符来说,在存储单元中存储的并不是字符本身,而是该字符的ASCII码。
字符型数据和整形数据是通用的,只是字符数据只占一个字节,无符号char只能存放0-255范围的整数。
char肯定用到了asc码表这样的机制,看见char类型把2进制和asc码表里的字符转换,char的数字转换了估计还是int
lvshaoqing
2010-06-28
打赏
举报
回复
[Quote=引用 11 楼 lqbk1 的回复:]
引用 7 楼 lvshaoqing 的回复:
引用 2 楼 oyster2008 的回复:
char就是整型
不要误人子弟!
char本来就是整型……
看《c与指针》去……
[/Quote]
取值范围不同,汇编指令处理不同。 何来相同之理。 误人子弟!!!
ameyume
2010-06-27
打赏
举报
回复
对于char型字符来说,在存储单元中存储的并不是字符本身,而是该字符的ASCII码。
字符型数据和整形数据是通用的,只是字符数据只占一个字节,无符号char只能存放0-255范围的整数。
东莞某某某
2010-06-27
打赏
举报
回复
[Quote=引用 8 楼 freeskyo 的回复:]
先谢谢大家的回复。
有能从计算机原理或编译原理的角度作一下分析的吗?
[/Quote]
编译器的结果,因为解释char要根据char单元里面存放的二进制,所以char可以跟char范围内的int通用
cao_julians
2010-06-27
打赏
举报
回复
可能有一个概念教程没有介绍,即“整类型”,它是整型(包括long,short修饰,unsigned,signed修饰的)、字符类型(也有unsigned,signed修饰的)、枚举类型的“超集”。它们都是“整数”,只不过值范围不同;都可以做for的循环变量(要保证连续)、做switch的选择变量
lqbk1
2010-06-27
打赏
举报
回复
[Quote=引用 7 楼 lvshaoqing 的回复:]
引用 2 楼 oyster2008 的回复:
char就是整型
不要误人子弟!
[/Quote]
char本来就是整型……
看《c与指针》去……
Yanger_xy
2010-06-27
打赏
举报
回复
char*本身就是int类型,字符对应的是其ASCII码
cattycat
2010-06-27
打赏
举报
回复
这有啥解释的呢,char就是一个字节,可以和int转换的,编译器支持这个转换。
freeskyo
2010-06-27
打赏
举报
回复
先谢谢大家的回复。
有能从计算机原理或编译原理的角度作一下分析的吗?
lvshaoqing
2010-06-25
打赏
举报
回复
[Quote=引用 2 楼 oyster2008 的回复:]
char就是整型
[/Quote]
不要误人子弟!
风吹草低现羊牛
2010-06-25
打赏
举报
回复
其实在计算机里面所以的字符数字.我们所在屏幕上看到的都是字符...
这是因为计算机遵实的是ASSIC(肯定写错了.)的编码...
就是这个数字代表的是这个字符在这个ASSI表中的位置..在内在中存储的是他的位置..
然后再传给显示卡.由于显示卡也是按这个GUI则,所以显示卡再找到这个编码所对应的字符再显示出来...
哎.表述起来真复杂...有个输入法叫区位码那个..就是那个意思...
jldream110
2010-06-24
打赏
举报
回复
char 为整形 占一个字节 。for ( char i=0;i<20;i++ ) 这里 char i=0 是初始化。其实正常使用这种一个字节的变量,定义为char 就可以了 ,能节省空间。
cattycat
2010-06-24
打赏
举报
回复
char也可以用整形,但是1个字节,只能表示-128-127之间的范围。如果是unsigned char,则255
加载更多回复(3)
用户从控制台输入一个
char
数组, 取出数组
下标
为奇数的字符, 并以倒叙的方式输出到控制台
* 用户从控制台输入一个
char
数组, 取出数组
下标
为奇数的字符, 并以倒叙的方式输出到控制台 */ public static void main(String[] args) { //定义一个
char
数组
char
[]
char
s = new
char
[10]; //输入 ...
Char
类型
数值超出范围,导致程序陷入死
循环
深入分析
本文主要分析
char
型数值的错误取值导致程序陷入死
循环
的深层次原因。通过构造一个典型程序死
循环
问题,跟随本文思维方式,可以让读者从编译器角度深入理解错误原因,还能了解到编译器是如何对
char
型取值范围进行限制...
java基础笔记4之理解并学会使用数组
创建一个
char
类型
的26个元素的数组,分别放置'A' - 'Z'. 使用for
循环
访问所有元素并打印出来。提示:
char
类型
数据运算 'A' + 1 -> 'B'2.请求出一个数组int[]的最大值{4,-1,9,10,23},并得到对应得
下标
。3.请求出...
C语言定义数组时使用枚举作为数组的
下标
通常情况下定义数组都是顶一个什么
类型
的数组然后
下标
或者脚标就是从0开始++++int array[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};但是用0-N这种整形数字做
下标
可读性非常不高,如果这个数组里保存的数据比较复杂,...
java 创建一个
char
类型
的数组,存储‘A‘-‘Z‘(26个字母)
public class Number { public static void main(String[] args){
char
[]
char
s = new
char
[26]; //int index = 0; //for (
char
i = 'A'; i < 'Z'; i++){ //
char
s[index] = i; // index++; //} for.
C语言
69,373
社区成员
243,080
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章