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

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

相关推荐
5980354152 分钟前
【java工具类】小数、整数转中文大写
android·java·开发语言
JIngJaneIL10 分钟前
基于java + vue个人博客系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot
吃喝不愁霸王餐APP开发者20 分钟前
Java后端服务在对接全国性霸王餐API时的多数据中心部署与就近调用策略
java·开发语言
froginwe1135 分钟前
jQuery UI 实例
开发语言
这周也會开心37 分钟前
128陷阱,==与equals区别
java·开发语言
kaikaile19951 小时前
matlab基于人工势场法的路径规划
开发语言·matlab
沙漠豪1 小时前
提取PDF发票信息的Python脚本
开发语言·python·pdf
youliroam1 小时前
ESP32-S3+OV2640简单推流到GO服务
开发语言·后端·golang·esp32·ov2640
BrianGriffin1 小时前
asdf 安装的 PHP 上传文件大小限制
开发语言·php
2501_916766542 小时前
【面试题1】128陷阱、==和equals的区别
java·开发语言