zhangjinxuan 发表于 2022-10-27 19:22:05

关于读入的一个问题

本帖最后由 zhangjinxuan 于 2022-10-27 19:25 编辑

啊就非常简单的问题:

C++的scanf和cin会不会读入换行符?(scanf读入char数组,cin读入char数组或者string)

如果你也会Python,那么可以帮忙回答下input会不会读入换行符?

希望大佬解答,谢谢{:10_303:}

jackz007 发表于 2022-10-27 19:44:57

      scanf() 和 cin 一般不会读入换行符,会把空格、tab 以及换行符视为空白字符 ,scanf() 唯有当格式描述符是 "%c" 时是例外,是可以将 '\n' 作为普通字符读入的。

zhangjinxuan 发表于 2022-10-27 19:46:43

jackz007 发表于 2022-10-27 19:44
scanf() 和 cin 一般不会读入换行符,会把空格、tab 以及换行符视为空白字符 ,scanf() 唯有当格式描 ...

意思说 %s 不可能读入换行,但是 %c 会的,对吗

陈尚涵 发表于 2022-10-27 20:09:53

肯定不会啊,cin会把空格、tab、和换行符当作分隔符(scanf可以指定分隔符)分隔符是不会读入的
getchar会读入

input的话只把换行当作分隔符,其他都没有效果(
a = int(input())
b = int(input())

中输入
1 2
是会报错的

zhangjinxuan 发表于 2022-10-27 20:13:37

陈尚涵 发表于 2022-10-27 20:09
肯定不会啊,cin会把空格、tab、和换行符当作分隔符(scanf可以指定分隔符)分隔符是不会读入的
getchar会 ...

意思说是 %c 或者 getchar 会读入换行,对吧

关于 input,有一次我在洛谷用Python刷题,居然发现洛谷的机器有时会吧换行读入

unsigned_int 发表于 2023-8-23 21:13:37

应该不会吧
页: [1]
查看完整版本: 关于读入的一个问题