还是不懂!!!
double他可以输出什么数?
double总共有64位吧ms然后内存里存的是m*2^r,存基数和指数,2是默认的不存m和r是整数都是和这样乘完了肯定有死区么,因为r不能足够小当为负数是,想想是不是啊永远不可能是很小的小数
123456、789546 这些类似的数字也可以输出?
%g解释明白点!!!不明白,什么G同g格式
123456 789456 能输出啊 %g 选用%f或%e格式中输出宽度较短的一种格式,不输出无意义的0
追问你的意思就是说%g可以选择型在%f、%e使用?
%g输出较短的数值之类的?
%g 是根据数值不同自动选择%f或%e.明白了吗
那这样子10 11 这个整数才可以输出?
%g=%lf吗?
如果输出是指数型则用大些E表示,用%g时用小写的e表示。这句话什么意思?
整数当然用整形%d输出啊, %g是%f和%e两种里面选一个,看哪一个输出宽度短。而如果是按%e指数输出,显示的就是多少e多少,当你使用了大写%G,输出就是 多少E多少,显示的差别而已。
另外c语言里,双精度也是用%f, l用于长整型数,可用于d,o,x,u前面。
123456、789546 这些类似的数字也可以输出?
我还是不明白%g
你的意思是%e、%f=%g?
%e是输出多少字节的?
%f是4个字节!
%e其实就是科学记数法,比如1.234560e+002(一般小数占6位,指数部分包括正负号共5位,同样可以用%m.ne来限定),%f是小数表示法,123.456.
例如:f=123.468
%f: 123.468000
%e: 1.234680e+002
%E: 1.234680E+002(大小写区别而已)
%g: 123.468(%f10列,%e13列,所以按%f输出,省略无意义的零)
%G: 同样是大小写区别而已。如果按%f输出则与%g没区别。如果是按指数输出则选择%E而不是%e。(实际中%g很少用吧)
至于123456这些肯定是在double范围内的。
比如定义 double f=123456; 那么用%f,%e,%g输出都可以。
顺便扯一下,整数是最常见的,所以定义了整形int,但int可能范围不够,所以有了长整型long。有了long小数没法表示呀,就有float。同样float的精度不够,才6-7个有效数字,所以才有了double甚至long double,有效数字高达15-16和18-19位。
所以浮点数已经包括了范围内的实数,回到你的提问,答案是肯定地。