C语言数组的初始化和字符数组和字符串


你的点赞评论就是对博主最大的鼓励
当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~


🍊自我介绍

  Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群一名“创始团队·嘉宾” ,现在我来为大家介绍一下有关嵌入式方面的内容。在进入介绍之前,可能有一些小伙伴不了解易编程·终身成长社群;想要进一步了解社群的小伙伴可以点击下方链接自行跳转至关于社群的介绍:

易编程·终身成长社群介绍 :
https://blog.csdn.net/weixin_74300052?spm=1011.2266.3001.5343
在这里插入图片描述


🍊数组的初始化

含义:
  在定义数组的同时,给数组中的每一个成员赋予一个初始的值。

🍊完全初始化

例如:
int a[5] = {10,20,30,40,50}

解释:a[1] = 10;a[2] = 20;a[3] = 30;a[4] = 40;a[5] = 50

🍊部分初始化

例如:
int a[5] = {1,2,3}

部分初始化:未初始化的值,系统默认为 0

错误写法:
1、int a[5] = 1,2,3,4,5;
2、int a[5]
   a[5] = {1,2,3,4,5}
3、int m = 5;
   a[m];   ([]里面的必须是一个明确的数)

🍊字符数组和字符串

含义:
  它是它是一个char/unsigned char类型的数组,常用来存放数组或字符串。

🍊1.存放形式

a.存放字符

char buf[5] = {'A','B','C','D','E'};

小思考:字符数组中只能存放字符或者字符串,这句话对吗?
答:不对,还可以存放整数哦~
eg:

char buf[5] = {65,66,67,68,69};

这里相当于五个字符里面的内容是:A,B,C,D,E

b.存放字符串

三种形式:
char buf[30] = "welcome";
char buf[30] = {"welcom"};
char buf[30] = {'w','e','l','c','o','m','e','\0'};//字符串是以'/0' 结尾的

代码解释:

#include <stdio.h>
int main()
{
	char buf1[30] = "welcome";
	char buf2[30] = {"welcom"};
	char buf3[30] = {'w','e','l','c','o','m','e','\0'};
	int i;
	printf("buf1 : ");
	for(i = 0; buf1[i] != '\0';i++)
		printf("%c ",buf1[i]);
	printf("\n");
	printf("-----------------------------");
	printf("buf2 : ");
	for(i = 0; buf2[i] != '\0';i++)
		printf("%c ",buf2[i]);
	printf("\n");
	printf("-----------------------------");
	printf("buf2 : ");
	for(i = 0; buf2[i] != '\0';i++)
		printf("%c ",buf2[i]);
	printf("\n");
	return 0;
}

🍊字符串的输入输出

  在C语言中对于字符串的输入输出我们有特定的方式
1、输入

char buf[100] = {0};
scanf("%s",字符数组的首地址);//scanf("%s",buf)

功能:

功能: 用户从键盘输入任意一段字符串,放到buf中。以回车,空格,Tab键作为用户输入的结束符号

2、输出

char buf[] = {"hello world"};

printf("%s\n",数组的首地址);
功能:输出数组中第一个 ' \0'之前所有的字符,并显示到屏幕上。若是用户对应字符数组中没有'\0',则会输出乱码。

代码演示:

#include <stdio.h>
int main()
{
	char name[100];
	printf("please input you name:");
	scanf("%s",name);  //hello world

	printf("NAME\n");
	printf("%s\n",name);   //hello
	return 0;
}

大家对这小节内容有什么疑问可以在评论区评论,博主和广大网友看到后会第一时间回复的

  • 9
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值