标准C语言10(字符串)

字符串:
由字符组成的串形结构,结束标志是’\0’
存在方式:
字符串字面值:
“由双引号包含的若干个字符”,储存在代码段,只读,修改会产生段错误,地址,末尾隐藏了一个’\0’
const char* strp = “hello”;
sizeof(“hello”) 6 字符个数+1

字符数组:char str[] = {‘a’,‘b’,‘c’};
储存在栈内存,可以修改,需要手动添加\0
注意:字符数组不要设置数组的长度

一般使用字符串字面值来初始化字符数组
char str[] = “hello world!”;

输入:
char str[256];
scanf("%s",str); 不能输入带空格的字符串
gets(str); 输入字符串时不限制长度,有安全隐患
fgets(str,size,stdin); 可以设置只接受size-1个字符(会为\0预留位置),如果输入的字符不足size-1,会把\n一起接收
输出:
printf("%s",str);
puts(str);会自动添加换行

输出缓冲区:
程序输入的数据并不能立即显示到屏幕上,而是先存储到输出缓冲区内,满足一定条件后才显示。
1、遇到\n后
2、遇到输入语句时
3、当输出缓冲区满4k
4、程序结束
5、手动刷新 fflush(stdout)

缓冲区机制可以提高数据的读写速度

输入缓冲区:
程序不立即获取屏幕上输入的数据,而是按下回车键时程序才从输入缓

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值