C语言scanf()函数读取包含空格的字符串

scanf()函数读取输入时,遇到空格或者回车结束读取;

所以输入的字符串中有空格,到空格就中断了;

根据资料,使用 "%[^\n]" 这样的格式化符遇到空格继续读取,直到敲了回车;

看一下;

cpp 复制代码
#include <stdio.h> 

int main() 
{ 
    char str1[80]; 
	char str2[80];

	scanf("%s", str1);
	printf("str1 = %s\n",str1);
    scanf("%[^\n]",str2); //读到'\n'结束读取
	printf("str2 = %s\n",str2);

    return 0; 
}

输入AAA BBB CCC DDD,AAA读到了str1中,BBB CCC DDD读到了str2中;

我理解了一下,[]表示集合,^表示非,\n是换行符; 这是正则;

正则的^在方括号表达式中使用时,表示不接受该方括号表达式中的字符集合;

相关推荐
毕设源码-朱学姐1 分钟前
【开题答辩全过程】以 基于Java的网上花店管理系统设计与实现为例,包含答辩的问题和答案
java·开发语言
量子炒饭大师1 分钟前
【一天一个计算机知识】—— 【操作数与运算符的关系】一文带你领悟 单目 双目 三目 运算符!!
c语言·c++·dubbo·单目运算符·双目运算符·三目运算符·操作数
zls3653652 分钟前
C# WPF canvas中绘制缺陷分布map
开发语言·c#·wpf
lly2024065 分钟前
并查集快速合并
开发语言
神仙别闹6 分钟前
基于 Java 的 I Don’t Wanna Be The Bugger 冒险游戏
java·开发语言·dubbo
季明洵7 分钟前
Java实现栈和最小栈
java·开发语言·数据结构·
Kiyra16 分钟前
深入浅出远程连接:Java 后端视角下的底层原理与实践
java·开发语言
Hx_Ma1619 分钟前
测试题(五)
java·开发语言·后端
musenh19 分钟前
python基础
开发语言·windows·python
froginwe1120 分钟前
SQL 主机:深入解析数据库的核心
开发语言