[申精]转换说明符问题补充
c新手吧
全部回复
仅看楼主
level 8
老高童鞋 楼主
鉴于最近几个哥们把打印输出搞得乱七八糟,也可能是教学的兄弟说的不够细吧,这里补充几个好了。
2013年10月26日 13点10分 1
level 8
老高童鞋 楼主
从%d开始吧……大家都知道这个是int专用吧?瞎扯,char也可以用。举个例子%4.2d,4代表字段宽度(就是一个数字一个宽度),.2代表数字个数,当d=3时就有/ 03/(俩空格)宽度不够在前面补空格(加-的在右边补)数字不够补0。再来%+05d,这会在输出数字之前加上符号(+-),0表示宽度不够不用空格用0取代。% d表示在输出数字前加空格。注意!!!1,当% d的数值为负,将用-取代那个空格。2,当0与.x同时出现,0无效如%05.3d,d=6,输出:/ 006/。以上是关于%d的讲解。有错误欢迎喷。
2013年10月26日 14点10分 2
空格什么的没打好……不懂再问
2013年10月26日 14点10分
回复 老高童鞋 : 4.2代表数字段宽度?比如要输出m 就要知道它的数字宽度也就是ascii码值得数字宽度,写在%与d的中间他就会输出m的ascii码值?还是输出字符m?求解
2013年10月26日 17点10分
回复 最爱张泽坤 :4代表字段宽度,没有.2
2013年10月26日 22点10分
回复 最爱张泽坤 :ascii要输出字符得%c,下面有写
2013年10月26日 23点10分
level 8
老高童鞋 楼主
接下来是%f与%e和%E,我知道你们晕,我当初也晕。他们是属于float的,当然还有double。(这边提一下short long signed unsigned全部去死,要不我今晚不要睡觉了。)继续,就用CPP中P72的例子吧,别const了,直接#define a 3853.99。
(下面用*代表空格,/起分隔作用)
例:%4.2f,这里4与前面一样不说了,2代表小数点后面只有两位小数,多出来砍掉(四舍五入),不够补0。其他与上面一个样。对咯上面少说了一定这里补充:字段宽度可以设定得比你的数字短,无影响,长了就补空格或0。例:%10.3f,打印为/**3852.990/别忘了a。靠,我前面居然用d=xxx,别介意……%e,就是披着科学计数法外套的%f,%E好像除了大写外没差(不知对不对),以上是float
2013年10月26日 14点10分 3
等等,在%f中不存在有.没0的现象
2013年10月26日 14点10分
level 9
我来给你顶一下,太长没看,但是挺有用的,坚持下去
2013年10月26日 14点10分 4
做点小表格不那么累……
2013年10月26日 14点10分
level 8
老高童鞋 楼主
然后是char,转义我不写了,会死人的……算了写一个\a(警报,你就认为是蜂鸣)在char里面是7,你也可以写007和\n一个鸟样。char输入有两种,chat sb=65和char sb='A'一点差都没有,别忘了''。(参考ASCII)输出%c,就是A,%d就是65。以上是char
2013年10月26日 14点10分 5
亲~chat sb=65和char sb='A'一点差都没有,别忘了''。(参考ASCII)输出%c,就是A,%d就是65。什么意思啊?例子没看懂~
2013年10月31日 03点10分
回复 小小的杰free :你置顶贴学会了么?学会了自然就懂。
2013年10月31日 04点10分
哈哈,你真是搞笑,还专门弄个SB,哈哈 --告诉你我现在不用小尾巴了!
2013年11月09日 00点11分
level 8
老高童鞋 楼主
关于进制,我也写一屌屌吧。建立在int之上的,%d十进制不说,%o是八进制,%x是十六进制
用它们表示100,分别是100,144,64。你问我怎么算,叫你小学不好好念……我们可以在 o和x前面加#,有何用?输出100,0144,0x64,这样就区分开了。不是经常打游戏时有0xdbc123456之类的错误么,就是十六进制,我觉得挺重要的。睡觉(~『~)~zZ
2013年10月26日 14点10分 6
牛人啊 --告诉你我现在不用小尾巴了!
2013年11月08日 21点11分
level 8
老高童鞋 楼主
@孤影楼 大吧观摩指教
2013年10月26日 15点10分 7
已经加精啦,你还可以在写些东西进去
2013年10月26日 17点10分
level 13
char实际就是以整型储存的
2013年10月26日 17点10分 8
sorry忘了写
2013年10月27日 06点10分
level 8
老高童鞋 楼主
今天要是作业早点做完就写转义
2013年10月26日 22点10分 9
[狂汗]
2013年10月27日 14点10分
嘿嘿,坐等~~~
2013年10月27日 14点10分
回复 00011588 :结果作业没做完……
2013年10月28日 04点10分
level 8
老高童鞋 楼主
吃完饭开始……
2013年10月28日 04点10分 10
level 8
老高童鞋 楼主
吃饱了开工,先来问个问题:如何在printf()中打印出""呢?别告诉我打4个"出来,你自己去试试。这里就要用到转义,一般用\(注意与/区别)。像\n就是我们经常用的非打印字符。那"怎么打印呢?来看下面这个例子:printf("xxx,\"a \\ is xxx.\"\n");(有没眼花缭乱?)打印结果为:xxx,"a\ is xxx"(光标移到下一行)你们自己试试。这就是转义序列。\"表示为非打印字符,不起printf()中"的作用。有些懂了吧?常见的转移序列有\a(警报) \b(退格,但一般不删除原字符) \f(走纸,打印机用到,但很少) \n(你懂的) \r(回车,光标回到句首) \t(水平制表符,就是空个几格) \v(垂直制表符,空几行)。注意!\自己也是可以被转义的。以上是转义。下次有可能写数据类型转换和错误的参数传递,但我怕太难,可能略去参数传递不讲。(主要怕讲不清楚[汗])
2013年10月28日 05点10分 11
支持楼主
2013年10月28日 05点10分
level 8
老高童鞋 楼主
我就知道这贴木人看
2013年10月29日 09点10分 12
好,写的真好 --告诉你我现在不用小尾巴了!
2013年11月08日 21点11分
level 6
(~ o ~)~zZ来报道
2013年10月29日 14点10分 13
爱死你了[狂汗]
2013年10月29日 14点10分
上次问题弄懂了吗?
2013年10月29日 14点10分
回复 老高童鞋 :凑活 最近会使用sleep()函数了呼呼 还有if语句 正在向for循环进军
2013年10月30日 14点10分
回复 最爱张泽坤 :后面的我都不会,参数传递依旧一知半解……
2013年10月30日 14点10分
level 11
正在看
   --或许有一天我们都老了。但我还是记得你当初让我心动的样子
2013年10月30日 23点10分 14
level 11
持续关注中,表示cpp卡在文件操作了
——我的世界很小,里面的人很少。
2013年10月31日 03点10分 15
level 7
[吐舌]楼主很给力哦
2013年10月31日 03点10分 16
[委屈]
2013年11月01日 05点11分
level 5
很有用啊,楼主继续加油啊,关注中~
2013年10月31日 14点10分 17
不要有太多期待,我十分的……懒
2013年10月31日 14点10分
level 11
沫沫来顶啦[乖][太开心]I
2013年11月01日 01点11分 18
那就谢谢咯[乖]
2013年11月01日 04点11分
回复 老高童鞋 :加油撒[太开心]
2013年11月01日 08点11分
level 8
老高童鞋 楼主
通知:由于下周一到周四楼猪我要悲催的期中考了,所以本周预定的说明符转换恐怕写不了,在这里给大家道歉[泪],有不周之处请各位海涵。下周必定把参数传递也写上[委屈]I
2013年11月01日 14点11分 21
level 8
老高童鞋 楼主
有一题挺有意思的:写一个程序,输入姓名(xxxxx xxxxx)然后打印出如下:
数字代表字段长度(要用到#include<string.h>)I
2013年11月02日 10点11分 22
答案下周公布[吐舌]
2013年11月02日 10点11分
补充下题目……其中第一个“6”表示“草泥马”的字段长度,放在“马”最后一个字节下面,后面的以此类推
2013年11月03日 10点11分
1 2 尾页