前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >BC9 printf的返回值

BC9 printf的返回值

作者头像
用户11319080
发布于 2024-10-17 10:58:06
发布于 2024-10-17 10:58:06
7700
代码可运行
举报
文章被收录于专栏:学习学习
运行总次数:0
代码可运行
BC9 printf的返回值

这里我们先要了解库函数printf

printf的返回值,是写入的字符总数 我们第一遍写代码时候可能写成这样:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include<stdio.h>
int main()
{
	int ret=printf("Hello world!");
	printf("%d", ret);
	return 0;
}

我们发现这样是通过不了测试的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include<stdio.h>
int main()
{
	int ret=printf("Hello world!\n");
	printf("%d", ret);
	return 0;
}

然后有的同学会直接给Hello world!后面加\n 结果还是通不过。因为\n也被当作字符算进返回值里面了。 我们再次改进代码如下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include<stdio.h>
int main()
{
	int ret=printf("Hello world!");
	printf("\n");
	printf("%d", ret);
	return 0;
}

我们再次改进:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include<stdio.h>
int main()
{
	int ret=printf("Hello world!");
	printf("\n%d\n", ret);
	return 0;
}

我们如果只想用一个printf语句呢

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include<stdio.h>
int main()
{
	printf("%d", printf("Hello world!"));
	return 0;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-10-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
printf函数的返回值!
这样的题目第一眼看上去有一点懵,其实它考的就是printf函数的返回值,及输出字符的个数。 输出结果
lexingsen
2022/02/24
3.3K0
puts和printf的区别
puts(str) //str为一字符串 则自动在str的后面加一个换行符\n 而printf(str)则需要手动加上\n 同理,gets接收字符串时,会将字符串后面的\n去掉,而用scanf接收时,会在字符串后面加上\n 所以,puts要和gets搭配,scanf和printf搭配使用。
杨鹏伟
2020/09/11
8700
Go 学习笔记:Println 与 Printf 的区别,以及 Printf 的详细用法「建议收藏」
Println 与Printf 都是fmt 包中的公共方法,在需要打印信息时需要用到这二个函数,那么这二个函数有什么区别呢?
全栈程序员站长
2022/11/10
7110
printf函数的求值顺序问题
printf的参数,函数printf从左往右读取,然后将先读取放到栈底,最后读取的放在栈顶,处理时候是从栈顶开始的,所有从右边开始处理的。
ccf19881030
2019/04/29
1K0
Java中printf的用法总结
printf的格式控制的完整格式: % - 0 m.n l或h 格式字符 下面对组成格式说明的各项加以说明: ①%:表示格式说明的起始符号,不可缺少。 ②-:有-表示左对齐输出,如省略表示右对齐输出。 ③0:有0表示指定空位填0,如省略表示指定空位不填。 ④m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。N指精度。用于说明输出的实型数的小数位数。为指定n时,隐含的精度为n=6位。 ⑤l或h:l对整型指long型,对实型指double型。h用于将整型的格式字符修正为short型。 ------------------------------------ 格式字符 格式字符用以指定输出项的数据类型和输出格式。 ①d格式:用来输出十进制整数。有以下几种用法: %d:按整型数据的实际长度输出。 %md:m为指定的输出字段的宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出。 %ld:输出长整型数据。 ②o格式:以无符号八进制形式输出整数。对长整型可以用"%lo"格式输出。同样也可以指定字段宽度用“%mo”格式输出。 ③x格式:以无符号十六进制形式输出整数。对长整型可以用"%lx"格式输出。同样也可以指定字段宽度用"%mx"格式输出。 ④u格式:以无符号十进制形式输出整数。对长整型可以用"%lu"格式输出。同样也可以指定字段宽度用“%mu”格式输出。 //不可使用 //在实践中没有运行出来。 ⑤c格式:输出一个字符。 ⑥s格式:用来输出一个串。有几中用法 %s:例如:printf("%s", "CHINA")输出"CHINA"字符串(不包括双引号)。 %ms:输出的字符串占m列,如字符串本身长度大于m,则突破获m的限制,将字符串全部输出。若串长小于m,则左补空格。 %-ms:如果串长小于m,则在m列范围内,字符串向左靠,右补空格。 %m.ns:输出占m列,但只取字符串中左端n个字符。这n个字符输出在m列的右侧,左补空格。 %-m.ns:其中m、n含义同上,n个字符输出在m列范围的左侧,右补空格。如果n>m,则自动取n值,即保证n个字符正常输出。 ⑦f格式:用来输出实数(包括单、双精度),以小数形式输出。有以下几种用法: %f:不指定宽度,整数部分全部输出并输出6位小数。 %m.nf:输出共占m列,其中有n位小数,如数值宽度小于m左端补空格。 %-m.nf:输出共占n列,其中有n位小数,如数值宽度小于m右端补空格。 ⑧e格式:以指数形式输出实数。可用以下形式://在实践中没有运行出来。 %e:数字部分(又称尾数)输出6位小数,指数部分占5位或4位。 %m.ne和%-m.ne:m、n和”-”字符含义与前相同。此处n指数据的数字部分的小数位数,m表示整个输出数据所占的宽度。 ⑨g格式:自动选f格式或e格式中较短的一种输出,且不输出无意义的零。 //在实践中没有运行出来。 ------------------------------------ 关于printf函数的进一步说明: 如果想输出字符"%",则应该在“格式控制”字符串中用连续两个%表示,如:
SingYi
2022/07/13
1.2K0
Linux内核中的printf实现
参数中明显采用了可变参数的定义,而在main.c函数的后面直接调用了printf函数,我们可以看下printf函数的参数是如何使用的。
范蠡
2018/07/25
2.3K0
printf的一个小技巧
  通过改变precisition的精度值可以控制position的打印精度。等价于下列代码:
Qt君
2020/06/24
3180
C语言的printf输出格式
1、控制小数点后有多少位:printf(“%.10lf\n”,f_a); //将浮点数f_a输出时,输出其小数点后10位,默认是输出小数点后6位。
全栈程序员站长
2022/09/15
2.7K0
Java|print、println与printf的区别
如果你是java的初学者,那相信你一定会有过疑惑,就是java中三大输出方式到底有什么区别。特别是先学过其他语言的,就更容易搞混。所以,小编就通过具体实例来详细缕一缕,帮助你理解记忆,消除疑惑。
算法与编程之美
2020/08/06
6.6K0
C语言中的printf()与scanf()
相比于其它的编程语言,C语言的输入输出功能非常强大,可以按照各种要求进行输入输出。
越陌度阡
2021/10/22
1K0
使用Printf换行时的小技巧
All the changes in life, all the charm. All the beauties are made of light and shadow.
小Bob来啦
2020/12/15
4.6K0
C语言中的 printf 与 scanf
相比于其它的编程语言,C语言的输入输出功能非常强大,可以按照各种要求进行输入输出。
越陌度阡
2022/11/27
8410
C语言中的 printf 与 scanf
scanf和printf函数的格式控制
scanf函数 %[*][数据宽度][长度]类型 其中[]中的是选填 [*]表示该输入项,读入后不赋值给变量。 例如: scanf("%d %*d %d",&a,&b); 输入1 2 3后 1赋值给a; 2被读取后,但不进行赋值; 3赋值给b; [数据宽度]指定获取的数据长度 例如: scanf("%3d%3d",&a,&b); 输入456789 第一个%3d获取输入的456789的截取前三位,后面的%3d就获取后面的三位。 456赋值给a; 789赋值给b; 长度(l或h) 读入长整型、双精度型或短整型数
布衣者
2021/09/07
6690
【编程经验】printf专题:你可能不知道的printf用法【文末有福利】
你可能不知道的printf用法 不少小伙伴反映C语言只会用printf函数,但一些参数、返回值什么的还不了解,所以今天总结一二,给大家总结和梳理一下,希望能为大家解决困惑。 首先,以
编程范 源代码公司
2018/04/18
7270
【编程经验】printf专题:你可能不知道的printf用法【文末有福利】
一个 printf 引发的基础复习
初看时,想当然了一下觉得输出就是1 1.00,后来编译出来运行一下,屏幕上却赫然是-1717986918 1.60。
mzlogin
2020/04/16
5040
使用setvbuf更改printf的默认buffer 行为
有3种buffer行为,“不缓冲”,“基于块的缓冲”和“基于行的缓冲”。stdout(printf)默认是基于行的缓冲,即写到stdout的字符都会被缓冲起来直到一个换行符输出的时候,这些字符才会被打印出来;标准错误输出stderr默认是不缓冲的,即写到stderr的字符会马上被打印出来。
用户7886150
2021/02/14
1.5K0
ExecuteScalar()_getchar的返回值
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说ExecuteScalar()_getchar的返回值,希望能够帮助大家进步!!!
Java架构师必看
2022/06/19
1.7K0
printf函数参数压栈顺序的问题
本文分析printf函数参数压栈顺序的问题,先来个入门第一题,不看答案先做题,看看你会不会怀疑自己的答案。
Jasonangel
2021/05/28
1.2K0
2. C语言 -- printf 的花式操作
(。・∀・)ノ゙嗨!大家好,我是呆博~很开心可以在这里给接着大家分享我的 C 语言学习笔记~因为微信对于代码块的支持并不是很好,所以代码部分以截图形式呈现,如果想获取原始代码可点击底部 阅读原文 获得。
谭庆波
2018/10/18
1.7K0
2. C语言 -- printf 的花式操作
PHP方法的返回值
不仅是PHP,大部分编程语言的函数或者叫方法,都可以用return来定义方法的返回值。从函数这个叫法来看,本身它就是一个计算操作,因此,计算总会有个结果,如果你在方法体中处理了结果,比如进行了持久化保存,那么这个函数就不用返回任何内容。而计算的结果是要给外部使用的,这时候就要将计算结果进行返回了。
硬核项目经理
2020/02/17
7.7K0
相关推荐
printf函数的返回值!
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验