宅在家 发表于 2020-11-2 16:19:15

求助

小白求助!{:10_266:}
谭浩强C语言的书上有一个这样的句子:
printf("%\n");
这个是什么意思啊

昨非 发表于 2020-11-2 16:42:12

打印个换行呗

宅在家 发表于 2020-11-2 16:45:00

但是有个%?

宅在家 发表于 2020-11-2 16:45:32

而且输出没有%

xieglt 发表于 2020-11-2 16:55:16

宅在家 发表于 2020-11-2 16:45
而且输出没有%

那就是书排版印刷错误

昨非 发表于 2020-11-2 16:57:00

宅在家 发表于 2020-11-2 16:45
而且输出没有%

%属于格式控制串里的
这个问题有点儿偏
举个例子你可以这么理解下
printf(" %d是 字符 = %c\n", ch , ch );
这里打印的引号里第一个%d相当于你问的那个%(都是格式规定符),不会打印出来
而后面的“字符=”就相当于你这个\n换行,是会被打印出来的

大裤衩子 发表于 2020-11-2 17:08:41

%格式控制符后面没有类型,没见过这种用法{:10_266:}。要单独输出一个%的话,要用在%前面再加一个%转义。

4goodworld 发表于 2020-11-2 21:35:20

%d 十进制有符号整数
%u 十进制无符号整数
%f 浮点数
%s 字符串
%c 单个字符
%p 指针的值
%e 指数形式的浮点数
%x, %X 无符号以十六进制表示的整数
%o 无符号以八进制表示的整数
%g 把输出的值按照%e或者%f类型中输出长度较小的方式输出
%p 输出地址符
%lu 32位无符号整数
%llu 64位无符号整数
一般%后面会跟一个符号的,具体解释如上
然后 \n 是换行的意思
常见的格式应该是
printf("%某个符号 \n",变量);
这行代码的意思白话解释大致是
打印一个以某个形式表达的变量并换行

vizey 发表于 2020-11-2 23:19:52

这个是格式字符,类似于%d是整型这样的,它们是不会被输出的

宅在家 发表于 2020-11-4 18:45:24

昨非 发表于 2020-11-2 16:57
%属于格式控制串里的
这个问题有点儿偏
举个例子你可以这么理解下


明白了,谢谢!
{:10_266:}
页: [1]
查看完整版本: 求助