当前位置: 首页 > wzjs >正文

品牌网站建设特色大蝌蚪最近的新闻热点时事

品牌网站建设特色大蝌蚪,最近的新闻热点时事,网络推广外包公司哪家好,企业主题wordpress 含演示数据1. 返回值说明 scanf函数会返回成功匹配并赋值的输入项个数&#xff0c;而不是返回输入的数据。 可以通过检查返回值数量来确认输入是否成功。若返回值与预期不符&#xff0c;就表明输入存在问题。 #include <stdio.h>int main() {int num;if (scanf("%d", …

1. 返回值说明

scanf函数会返回成功匹配并赋值的输入项个数,而不是返回输入的数据

可以通过检查返回值数量来确认输入是否成功。若返回值与预期不符,就表明输入存在问题。

#include <stdio.h>int main() {int num;if (scanf("%d", &num) != 1) {  //1是指输入的数据个数printf("输入无效,请输入一个整数。\n");return 1;}printf("你输入的整数是: %d\n", num);return 0;
}

2. 地址传递

给 scanf 函数传递变量时,要传递变量的地址(即使用 & 运算符),这样 scanf 才能把输入的值存储到变量所在的内存位置。

#include <stdio.h>int main() {int num;// 正确用法scanf("%d", &num);// 错误用法:scanf("%d", num); return 0;
}

3. 输入缓存区问题

scanf 读取输入后,输入缓冲区可能会残留一些字符(如用户输入了回车->换行符 \n),这可能会对后续的输入操作产生影响。

#include <stdio.h>int main() {int num;char ch;scanf("%d", &num);  //这里模拟用户输入整数后还按了回车getchar();   // 消耗掉输入缓冲区的换行符/*
当用户输入整数并按下回车键时,回车键产生的换行符 \n 会留在输入缓冲区里。
若不把这个换行符消耗掉,后续的 scanf("%c", &ch); 就会读取到这个换行符,而非用户输入的字符。
getchar() 函数的作用就是从输入缓冲区读取一个字符,这里它读取的就是换行符。*/scanf("%c", &ch);  //&ch 表示把用户输入的字符存到 ch 变量的内存地址中。return 0;
}

4. 格式控制字符串

(1)匹配输入

格式控制字符串要和输入的数据类型相匹配。例如,读取整数用 %d,读取浮点数用 %f 等。

#include <stdio.h>int main() {int num;float f;scanf("%d", &num);scanf("%f", &f);return 0;
}
(2)空格和特殊字符

格式控制字符串里的空格、制表符和换行符会匹配输入中的任意空白字符序列。其他非格式说明符的字符必须和输入中的字符精确匹配。

#include <stdio.h>int main() {int a, b;// 输入时需要输入 a=1 b=2 这样的格式scanf("a=%d b=%d", &a, &b); 
/*
注意如果平时只需要输入一个值,则后面不要加空格。
即:scanf("%d ", &a);  这种写法是❌错误的
*/return 0;
}

5. 防止缓冲区溢出

使用 scanf 读取字符串时(%s),要留意防止缓冲区溢出。可以使用宽度限定符来限制读取的字符数量。

#include <stdio.h>#define MAX_LENGTH 10int main() {char str[MAX_LENGTH];// 最多读取 MAX_LENGTH - 1 个字符,为字符串结束符 '\0' 留位置scanf("%9s", str); return 0;
}

6. 不同类型的混合使用

要注意输入格式和顺序,防止出现意外结果。

#include <stdio.h>int main() {int num;char str[10];// 先输入整数,再输入字符串scanf("%d %s", &num, str); return 0;
}

7. 错误处理

scanf 函数可能会因为输入不匹配、文件结束等原因失败,要对这些情况进行适当的错误处理。

#include <stdio.h>int main() {int num;if (scanf("%d", &num) != 1) {if (feof(stdin)) {printf("输入结束。\n");} else {printf("输入错误。\n");}return 1;}return 0;
}

 因为今天又在scanf函数上栽了跟头,所以今天终于决定将scanf容易踩的抗自我做一个总结。以上是自己结合AI还有自己的一些理解写的一些总结。如果有不足处,欢迎评论区指出,如果对你有帮助,那可以给我一个👍赞吗

http://www.dtcms.com/wzjs/198227.html

相关文章:

  • 南宁市网站建设销售平台软件有哪些
  • 百度 网站 说明广告网站留电话
  • 抚州建设局网站qq群引流推广软件
  • 传奇游戏电脑版站长工具 seo综合查询
  • 厦门网站设计公司佛山快速排名
  • 网站建设网络推广方案网站seo推广员招聘
  • 公司网站建设款计什么科目今天的新闻摘抄
  • 美国政府网站建设广州seo报价
  • 微网站免费模板企业品牌推广策划方案
  • 百度是国企还是央企seo兼职
  • 珠海建网站专业公司搭建网站的软件
  • 网页设计初学者公司网页设计模板班级优化大师免费下载电脑版
  • 中文url转码百度seo可能消失
  • 关于网站建设的毕业论文优化大师会员兑换码
  • 做网站有哪个空间semi认证
  • 传播建设网站最新足球赛事
  • 互联网c2c交易类网站详细策划书营销到底是干嘛的
  • 新闻网站建设汇报材料seo快速排名百度首页
  • 哪里有专业做网站的互动营销名词解释
  • 深圳实力网站建设线上网络平台推广
  • 深圳企业网站公司口碑营销公司
  • 什么网站可以接单做海报张家界百度seo
  • 南昌好的做网站的公司营销网店推广的软文
  • 工信部备案查询企业名单武汉seo服务外包
  • 万户网站建设公司长尾词在线挖掘
  • 免费申请网站空间及域名人民日报新闻
  • 怎么做qq盗号网站nba在线直播免费观看直播
  • 利用店铺网站做灰色优化济宁seo公司
  • 佛山模板网站建站上海推广网络营销咨询热线
  • 网站建设自优化营商环境心得体会1000字