char型数组与int型数组区别

ints[]={1,2,3,4,5};chars[]={'a','b','c','d','e','\0'};分别使用语句cout<<s<<endl;时会有完全不同的结果问... int s[]={1,2,3,4,5};
char s[]={'a','b','c','d','e','\0'};
分别使用语句cout << s << endl;时会有完全不同的结果
问题:出现这种情况是由什么机制决定的?
我的意思是 一个会输出地址 一个会输出内容 这是为什么?
展开
 我来答
许诗文00
推荐于2017-09-27 · TA获得超过4291个赞
知道小有建树答主
回答量:425
采纳率:100%
帮助的人:26.7万
展开全部
char 表示的数值范围是: -128 ~ 127 unsigned char 表示的数值范围是: 0 ~ 255
int 是2字节(16位处理器)或4字节(32、64) long int 32 位, short int 16 位。数值范围 不同。
char 是1字节。
当Int 表达0-127 的时候,他只用了一个字节的空间,另外的字节并没用使用;而char 字节是只有一个字节的大小,所以这个图片的意思为在Int表达0-127的时候,他和char的值是一样的,而且是正常的。
但是可以通过使用%c 或%d来让这个变量表示它的值所代表的asc2值或者它的值的大小。 int a=97;
printf(“%d" ,a) //output 数字97
printf("%c" ,a) //output 'a' 因为a的ASC值为97;
INT函数
将数字向下舍入到最接近的整数,即取不大于自变量的最大整数,例如:int[6.4]=6 int[-9.7]= -10 语法 INT(number) Number 需要进行向下舍入取整的实数。 示例 如果将示例复制到空白工作表中,可能会更易于理解该示例。 A 1 数据 2 19.5
公式 说明(结果)
=INT(8.9) 将8.9向下舍入到最接近的整数(8) =INT(-8.9) 将-8.9向下舍入到最接近的整数(-9)
=A2-INT(A2) 返回单元格A2中正实数的小数部分(0.5)。
百度网友75015d9
2009-05-12 · TA获得超过643个赞
知道小有建树答主
回答量:196
采纳率:0%
帮助的人:272万
展开全部
你这里对s定义了两次数组,重复定义,编译都通不过的,怎么输出,这是我在VC6.0中编译的错误提示信息:
error C2371: 's' : redefinition; different basic types
如果只定义其中一个数组,有时结果不同,是这样的:定义数组时s即是数组第一个元素的地址也是,也是数组的起始地址。在VC6.0环境下,定义int数组时输出s是数组起始地址,当定义char时先输出第一个元素,不为空接着输出下个,直到遇到空字符结束为止。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jqk1986
推荐于2017-09-20 · TA获得超过285个赞
知道答主
回答量:127
采纳率:0%
帮助的人:0
展开全部
操作符重载,你cout << (void*)s << end;再试试?

这个就是操作符重载:

#include <iostream>
using namespace std;

struct A {
A& operator<<(int i){cout<<i;return *this;}
A& operator<<(void*i){cout<<(void*)i;return *this;}
A& operator<<(ostream& (*op) (ostream&)){op(cout);return *this;}
};

int main()
{
A a;
a << 1 << endl;
a << (void*)&a << endl;
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
slk_xyh
2009-05-13 · 超过26用户采纳过TA的回答
知道答主
回答量:138
采纳率:0%
帮助的人:0
展开全部
数组名是地址,所以整数数组输出地址.
但c++规定使用字符数组名就是使用它保存的字符串
所以字符数组输出内容
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
随和又委婉丶雪花8191
2009-05-12 · TA获得超过1565个赞
知道小有建树答主
回答量:1243
采纳率:100%
帮助的人:809万
展开全部
char字符是以ASC码为实际保存数值的输出的当然是ASC码了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式