1. scanf 函数是有返回值的,它的返回值可以分成三种情况

1) 正整数,表示正确输入参数的个数。例如执行 scanf("%d %d", &a, &b);

如果用户输入"3 4",可以正确输入,返回2(正确输入了两个变量);

如果用户输入"3,4",可以正确输入a,无法输入b,返回1(正确输入了一个变量)。

2) 0,表示用户的输入不匹配,无法正确输入任何值。如上例,用户如果输入",3 4",返回0。

3) EOF,这是在stdio.h里面定义的常量(通常值为-1),表示输入流已经结束。在Windows下,用户按下CTRL+Z(会看到一个^Z字符)再按下回车(可能需要重复2次),就表示输入结束;Linux/Unix下使用CTRL+D表示输入结束。

所以可以使用下面的代码来处理输入:

while (scanf("%s %c %c", str, &oldchar, &newchar) == 3)

{

; //处理

}

2. 为什么前面 scanf 的格式串里面,%s和%c中间需要空格呢?

那是因为如果没空格的话。。。oldchar输入的就是空格了= =.

3. 顺便说一下,printf的返回值是输出的字符数,例如,printf("1234")的返回值是4,而printf("1234\n")的返回值是5。

scanf返回值问题

在家养病,闲着没事看C primer plus,看到书中对于scanf输入的判断,常用如下方法: 此时它将返回1视为我输入成功,如果不为1则视为输入失败.那到底scanf的返回值具体指的是什么呢? 例 ...

C语言函数返回值和变量类型

前言 最近在刷题,在写矩阵的快速幂的题时,对于返回值是数组的程序,写的十分冗杂.借此机会,重新梳理下C语言中函数的返回值与变量类型的关系. 按照变量的寿命,可以分为三种类型 1.静态变量 寿命从程序开 ...

C语言return返回值深入理解

C语言使用return关键字返回函数值,可以很好对函数做封装,此处的疑问是:函数内部创建的变量都是局部变量,即私有的,作用域就在函数之内,为什么却可以把值传给调用函数? 解释这个问题还需要从C语言调用 ...

Shell脚本获取C语言可执行程序返回值

#!/bin/sh #./test是c程序,该程序 返回0 ./test OP_MODE=$? echo $OP_MODE # $? 显示最后命令的退出状态.0表示没有错误,其他任何值表明有错误.

C语言程序返回值为int的时候,不同值代表不同的意义

这个是我自己给自己的代码定的标准,方便自己阅读与编码.他人代码情况不可套用 1 执行成功 0 出现错误,不影响程序执行 -1 执行失败 -2 程序内部致命错误,退出程序

C语言scanf函数返回值小记

scanf scanf是C标准库stdio里面定义的用于获取用户输入的函数,具体的介绍可以在CppReference上看到.scanf的返回值是已经成功赋值的变量个数,也就是说在 scanf(&quo ...

C语言scanf的返回值

#include int main(void) { long num; long sum = 0L; int status; printf("Please e ...

Shell入门教程:Shell函数的返回值

shell函数返回值一般有3种方式: 1.return语句(默认的返回值) shell函数的返回值可以和其他语言的返回值一样,通过return语句返回. 比如: #!/bin/bash functio ...

Linux Shell 函数返回值

Shell函数返回值,常用的两种方式:return,echo 1) return 语句 shell函数的返回值,可以和其他语言的返回值一样,通过return语句返回. 示例: #!/bin/sh fu ...

随机推荐

DataSet装换为泛型集合 222

#region DataSet装换为泛型集合 /// /// 利用反射和泛型 /// ///

Delphi写的DLL回调C#

C#的调用Delphi的DLL没有问题,DLL回调时遇到了麻烦,网上找了个方法,解决了这个问题 Delphi部分,列举了三种回调函数定义 library test; uses SysUtils; {$ ...

扩大a标签的响应区域

xx

skiplist

§1 Skip List 介绍 Skip List是一种随机化的数据结构,基于并联的链表,其效率可比拟于二叉查找树(对于大多数操作需要O(log n)平均时间).基本上, 跳跃列表是对有序的链表增加上 ...

jquery 事件 多次绑定,多次触发,怎么清除历史绑定事件

Jquery在处理事件的时候有时候会遇到预想不到的结果 如下 Foo

进制 表示某一位置上的数运算时是逢X进一位.二进制就是逢二进一, 十进制是逢十进一,十六进制是逢十六进一,以此类推. so:二进制001010101只有0和1计算机中的数据都是二进制表示,四进制以0. ...

php根据IP获取IP所在城市

转载出处:php实现根据IP地址获取其所在省市的方法 //根据现有IP地址获取其地理位置(省份,城市等)的方法 function GetIpLookup($ip = ''){ if(empty($ip ...

Hive 的简单使用及调优参考文档

Hive 的简单使用及调优参考文档   HIVE的使用 命令行界面 使用一下命令查看hive的命令行页面, hive --help --service cli 简化命令为hive –h 会输出下面的这 ...

iOS 开发 右滑返回上一级控制器

#import @interface UINavigationController (Transition)

mybatis 动态sql 插入报错

1. 值为null必须制定jdbcType 单条执行的话,可以考虑把值为null的字段去掉 2. 值的类型无法解析 比如oracle.sql.TIMESTAMP类型,需转为java.sql.TIMES ...

c语言scanf返回值错误,c语言scanf返回值相关推荐

  1. c语言实验一的错误,C语言实验(三)

    第四章分支结构实验 实验项目:第四章实验设计 实验项目:4.3.1  if语句的应用 ,4.3.2  switch case的应用 ,4.3.3  switch case嵌套if语句的应用 ,4.3. ...

  2. C语言浮点型数据相加错误,C语言——整型和浮点型混合运算

    1. int和double混合运算 C语言int和double混合运算时,会自动将int类型的数据转换为double类型的数据,最后得到的结果也是double类型.如下例: double a=4.0/ ...

  3. c语言c2182是什么错误,C语言中一种更优雅的异常处理机制

    上一篇文章对C语言中的goto语句进行了较深入的阐述,实际上goto语句是面向过程与面向结构化程序语言中,进行异常处理编程的最原始的支持形式.后来为了更好地.更方便地支持异常处理编程机制,使得程序员在 ...

  4. c语言三目运算错误,c语言中三目运算符有什么用

    三目运算符又称:三元运算符.条件运算符,用于根据二元条件的结果执行代码,可以有效的减少行代码的数量并提高应用程序的性能. c语言中三目运算符 三目运算符具有以下形式:表达1?表达2:表达3 说明:表达 ...

  5. c语言中格式符号错误,C语言中符号格式说明

    scanf 语法: #include int scanf( const char *format, ... ); scanf()函数根据由format(格式)指定的格式从stdin(标准输入)读取,并 ...

  6. c语言中数据精度发生错误,C语言Double类型数据保证精度有关问题

    C语言Double类型数据保证精度问题 我用手算算出的数据为-1.35323517,但是在C语言里面为了保证数据精度,VC++运行的结果为-1.35323517024517 ,按说应该在-1.3532 ...

  7. C语言会出现的错误,c语言,能运行但是偶尔会出现些错误,请高手们帮忙看看错在哪里啦...

    匿名用户 1级 2010-06-22 回答 printf("Now the test begin!Come on!\n"); printf("Press any key ...

  8. c语言中出现nan错误,c语言中浮点运算的inf和nan错误

    ============================================ 作者:yuanlulu http://blog.csdn.net/yuanlulu 版权没有,但是转载请保留此 ...

  9. c语言读取txt数字错误,C语言fread为什么会读取失败呢?

    fread是用来读取文件的函数,其形式为 size_t fread ( void *buffer, size_t size, size_t count, FILE *file) ; 功能为从文件指针f ...

最新文章

  1. keepalived双实例配置
  2. python和java一样吗-Python与Java的区别与优劣?
  3. linux内核打开prntk,操作系统实验一向Linux内核增加一个系统调用.docx
  4. mysql该账户已存在_mysql 查看函数的所属用户和已存在的函数
  5. 阿帕奇与php整合,整合apache和php
  6. 95-136-043-源码-Operator-CoProcessOperator
  7. python处理txt文件的一种情况
  8. IEEE正推进制定量子计算标准
  9. [修复] Eclipse – Java编译器级别与已安装的Java项目构面的版本不匹配
  10. 51 nod 1439 互质对(Moblus容斥)
  11. Windows Azure 安全最佳实践 - 第 7 部分:提示、工具和编码最佳实践
  12. 线性代数【一】:行列式的概念与计算
  13. asp oracle数据库开发 adodb,asp怎么连接oracle数据库
  14. AccessPort 0d 0a乱码
  15. java 基础数据结构_Java实现的基础数据结构
  16. C#中的DoEvents()
  17. 游戏化思维——核心驱动力
  18. 使用教程--通过Excel模板导入数据到表单
  19. 十大经典php网店系统
  20. Carla设置同步模式

热门文章

  1. “小镇做题家”:难免挣扎,不必自卑!
  2. 国内有哪些比较靠谱的云服务器值得选择?
  3. 2022Python最新彩虹表(1)
  4. Python监控window进程
  5. python多线程爬取段子_python爬虫(爬取段子)
  6. 闲云:unity中不能识别monobehevior关键字的问题
  7. 我不喜欢你了 你满意了么?伤感QQ日志
  8. [BUUCTF-N1BOOK]-【信息收集】[第一章 web入门]常见的搜集
  9. 招聘——【S神】~苏嘉亿
  10. Threat Intelligence videos