为了账号安全,请及时绑定邮箱和手机立即绑定

要用printf输出sizeof的问题,按下图所示运行,为什么会显示有错误syntax error : ','?

要用printf输出sizeof的问题,按下图所示运行,为什么会显示有错误syntax error : ','?

C
Rebellious_2016 2016-11-05 09:43:25
#include <stdio.h> int main( ) { int a,b; float d,e; char c1,c2; double f,g; long m,n; unsigned int p,q; a=61;b=62; c1='a';c2='b'; d=3.56;e=-6.87; f=3157.890121;g=0.123456789; m=50000;n=-60000; p=32768;q=40000; printf("a=%d,b=%d\nc1=%c,c2=%c\n d=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e); printf("f=%15.6f,g=%15.12f\nm=%ld,n=%ld\np=%u,q=%u\n",f,g,m,n,p,q); printf("sizeof(int):%dsizeof(int):%d\n,sizeof(float):%dsize(float):%d\n,sizeof(char):%dsizeof(char):%d\n",sizeof,sizeof,sizeof,sizeof,sizeof,sizeof); printf("sizeof(double):%dsizeof(double):%d\n,sizeof(long):%dsizeof(long):%d\n,sizeof(unsigned int):%dsizeof(unsigned int):%d\n",sizeof,sizeof,sizeof,sizeof,sizeof,sizeof); return 0; }是最后的sizeof后应该加(),括号中应该写输出的格式吗?可是char的输出格式写c显示不正确,unsigned int 的输出格式u也显示不正确……求解答。即如下所示 printf("sizeof(int):%dsizeof(int):%d\n,sizeof(float):%dsize(float):%d\n,sizeof(char):%dsizeof(char):%d\n",sizeof(d),sizeof(d),sizeof(f),sizeof(f),sizeof(c),sizeof(c)); printf("sizeof(double):%dsizeof(double):%d\n,sizeof(long):%dsizeof(long):%d\n,sizeof(unsigned int):%dsizeof(unsigned int):%d\n",sizeof(f),sizeof(f),sizeof(f),sizeof(f),sizeof(u),sizeof(u));
查看完整描述

2 回答

已采纳
?
Yexiaomo

TA贡献152条经验 获得超157个赞

......

需要明白, sizeof 是一个运算符, 格式为: sizeof( type )   比如你想知道一个int类型占多大字节, 可以这样写printf(“%d”, sizeof( int ) );     输出的 格式控制符为 %d , 输出结果为 4,

如果你想知道, 一个数 所占的字节数, 可以这样写: 

double d = 1.00;

printf( " %d ", sizeof(d) );

输出结果为: 8, 也就是 double类型所占的字节数 。。。


所以 对比 上面你 的 程序,或许你就会知道 那里出错了吧。。。 自己修改吧。。。

-------------------------------------------------------分---割---线--------------------------------------------------------------

啦啦啦~~Imcainiao

查看完整回答
1 反对 回复 2016-11-05
?
Rebellious_2016

TA贡献1条经验 获得超0个赞

明白了!蟹蟹
查看完整回答
反对 回复 2016-11-05
  • 2 回答
  • 0 关注
  • 3806 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信