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

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

相关推荐
yugi9878388 小时前
基于C#实现数字识别率的OCR方案
开发语言·c#·ocr
小七在进步8 小时前
数据结构:线性表之单链表
c语言·数据结构
星越华夏8 小时前
python中四种获取文件后缀名的方法
开发语言·python
鱼子星_9 小时前
【数据结构】排序的拓展——快速排序的生态多样性与归并排序沾染文件操作
c语言·数据结构·算法
javajenius9 小时前
Pixi:用 Rust 重写 Conda 体验的包管理工具
开发语言·其他·rust·conda
神明不懂浪漫9 小时前
【第二章】Java中的数据类型,运算符与程序逻辑控制
java·开发语言·经验分享·笔记
laowangpython9 小时前
tokio-rstracing:Rust 可观测性的标准答案
开发语言·后端·其他·rust
傻啦嘿哟9 小时前
为什么Python没有块级作用域?
开发语言·python
技术小结-李爽9 小时前
【工具】Shell之Bash、Zsh配置文件的使用
开发语言·bash
壮Sir不壮9 小时前
GO语言——GMP调度模型
linux·开发语言·golang·go·操作系统·线程·协程