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

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

相关推荐
踩着两条虫12 小时前
「AI + 低代码」的可视化设计器
开发语言·前端·低代码·设计模式·架构
JoneBB12 小时前
ABAP Webservice连接
运维·开发语言·数据库·学习
即使再小的船也能远航13 小时前
【Python】安装
开发语言·python
Irissgwe13 小时前
类与对象(三)
开发语言·c++·类和对象·友元
雪度娃娃13 小时前
转向现代C++——优先选用nullptr而不是0和NULL
开发语言·c++
我星期八休息14 小时前
Linux系统编程—基础IO
linux·运维·服务器·c语言·c++·人工智能·算法
萌新小码农‍14 小时前
python装饰器
开发语言·前端·python
KK溜了溜了14 小时前
Python从入门到精通
服务器·开发语言·python
故事和你9114 小时前
洛谷-【图论2-1】树5
开发语言·数据结构·c++·算法·动态规划·图论
threelab15 小时前
Three.js 初中数学函数可视化 | 三维可视化 / AI 提示词
开发语言·前端·javascript·人工智能·3d·着色器