[记录学习][C基础014]字符串与字符串数组

"这篇博客介绍了C语言中字符串的存储方式,强调了字符串在char数组中以''作为结束标识,并通过示例展示了如何使用scanf和printf处理字符串。还提到了字符与字符串的区别,以及scanf函数在读取字符串时遇到空格会停止的特点。"
摘要由CSDN通过智能技术生成

字符串(character string)是一个或多个字符的序列。

C语言没有专门用来储存字符串的变量类型,字符串都被储存在char类型的数组中。

数组由连续的存储单元组成,字符串中的字符被储存在相邻的存储单元中,每个单元储存一个字符。

数组末尾的字符是 \0 ,它叫做空字符(null character),用它标识字符串的结束。它不会被打印出来,仅仅用来表示这个字符串结束了。因此!数组的容量必须!至少比待储存字符串的长度多1!(\0 要占一个存储单元)

可以把数组看作是一段连续多个的存储单元,是同种类型数据元素的有序序列。

#include<stdio.h>
#define PRAISE "You are beautiful !"

int main(void)
{
	char name[40];

	printf("What's your name? ");
	scanf("%s", name);        //注意!这里name前面是没有&的!
	printf("Hello, %s. %s\n",name,PRAISE);
	
	return 0;
}

注意 scanf("%s", name); 中,name前面是不需要加&的。

另外,可以看到——当我输入big man时,它只打印出big。

这是因为 scanf()  遇到第一个空白(空格、制表符、换行符)的时候就不会再读取了。

字符与字符串的区别

字符常量 'x' 和字符串常量 "x" 是不同的!区别在于:①'x'是基本类型(char),而"x"是派生类型(char数组)②'x'是一个字符(x),而"x"是两个字符(x和\0)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值