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是换行符; 这是正则;

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

相关推荐
ssswywywht1 分钟前
python练习
开发语言·python
理人综艺好会3 分钟前
Go 语言测试综合指南
开发语言·golang·log4j
froginwe114 分钟前
《Viewport》详解:网页布局中的核心概念
开发语言
量子炒饭大师7 分钟前
【C++入门】Cyber尖层的虚实重构—— 【类与对象】类型转换
开发语言·c++·重构·类型转换·隐式转换·explicit·类与对象
wula199412 分钟前
C# Revit二次开发 地层工程量统计
开发语言·c#
范特西.i14 分钟前
QT聊天项目(4)
开发语言·qt
lly20240614 分钟前
PostgreSQL DELETE 操作详解
开发语言
今天你TLE了吗19 分钟前
JVM学习笔记:第二章——类加载子系统
java·开发语言·jvm·笔记
AutumnorLiuu20 分钟前
C++并发编程学习(四)——死锁及其预防
开发语言·c++·学习
_OP_CHEN26 分钟前
【前端开发之JavaScript】(二)JS基础语法上篇:吃透变量 / 类型 / 输入输出
开发语言·javascript·html·ecmascript·前端开发·网页开发