开发者社区> 问答> 正文

用scanf()接收字符串需要注意什么?

用scanf()接收字符串需要注意什么?

展开
收起
游客a6dwcf3rbwut2 2022-03-29 20:40:32 473 0
1 条回答
写回答
取消 提交回答
  • 1.除了%c,对于其他的所有格式说明符,scanf()会跳过所有空白字符(包括空格、制表符、换行符)。

    2、非格式字符的对应问题

    也就是你写的是scanf("%d,%d,%c",&a,&b,&c);那你运行输入时就需要以8,67,A(举个例子)的形式输入,否则就会出现错误。这里说一句,当没有非格式字符时,也就是说写的是scanf("%d%d%c",&a,&b,&c);如果没有%c还行,你可以在输入时用间隔符来间隔;可如果有%c的话,如例子,你的间隔符就会作为字符给了c,显示的时候就会显示两个数字加上一个空格、换行等效果了。

    3、scanf()执行时的换行符问题

    在scanf()执行时,输入完数据后需要按一下回车键,一般情况下这个回车键对结果并无影响,但是当出现多句scanf()且非第一句是输入字符的,就会出现问题。

    2022-03-29 20:44:39
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载