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

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

相关推荐
橘颂TA20 小时前
C++ 信号量
java·开发语言
程序猿202320 小时前
Java Thread
java·开发语言·python
嫂子开门我是_我哥20 小时前
第五节:字符串处理大全:文本操作的“万能工具箱”
开发语言·python
2501_9277730720 小时前
嵌入式——I.MX6ULL裸机环境配置
c语言·嵌入式硬件
csbysj202020 小时前
Bootstrap 代码深度解析与实战应用
开发语言
弹简特20 小时前
【Java-阔怕的JVM】JVM
java·开发语言·jvm
不绝19120 小时前
MonoBehavior/GameObject/Time/Transform/位移/角度旋转/缩放看向/坐标转换
开发语言·python
凯子坚持 c20 小时前
Qt常用控件指南(4)
开发语言·qt
代码无bug抓狂人20 小时前
C语言之切蛋糕(运用前缀和算法和单调队列算法)
c语言·开发语言
量子炒饭大师20 小时前
【C++入门】Cyber骇客构造器的核心六元组 —— 【类的默认成员函数】明明没写构造函数也能跑?保姆级带你掌握六大类的默认成员函数(上:函数篇)
开发语言·c++·dubbo·默认成员函数