• 首页
  • 作文
  • 散文
  • 故事
  • 古诗
  • 短文
  • 语录
  • 写作
  • 诗歌
  • 百科
  • 知识
  • 首页
  • 作文
  • 散文
  • 故事
  • 古诗
  • 短文
  • 语录
  • 写作
  • 诗歌
  • 百科
  • 知识
首页 » 生活常识 » 字符数组的定义和初始化方法(1.如何进行字符数组的定义,初始化及引用)

字符数组的定义和初始化方法(1.如何进行字符数组的定义,初始化及引用)

分类:生活常识 日期:2022-09-22 07:45 浏览:3 次

1.1.如何进行字符数组的定义,初始化及引用

char c[10];//初始化

c[0]='I'; c[1]=' '; c[2]='l'; c[3]='o'; c[4]='v'; c[5]='e'; c[6]=' '; c[7]='y'; c[8]='o'; c[9]='u';

-------------------------------------------------------------------

char b[10]={"abcxsdfg"};

-------------------------------------------------------------------

char a[8]={'i','e','o','d','e','b','o','u'};

-------------------------------------------------------------------

char a[11];//输入输出

for(i=0;i<10;i++)→ for(i=0;i<10;i++)

a[i]=getchar();//一个一个赋值 ----- putchar(a[i]);//一个一个输出

-------------------------------------------------------------------

for(i=0;i<10;i++)→ for(i=0;i<10;i++)

scanf("%c",&a[i]);//一个一个赋值 ----- printf("%c",a[i]);//一个一个输出

-------------------------------------------------------------------

scanf("%s",a);//这个一下输入一串字符;空格,回车作为分隔符;

printf("%s",a);//这个一下输出一串字符;

-------------------------------------------------------------------

gets(a);//这个一下输入一串字符;只有回车作为分隔符;

puts(a);//只有用gets();输入才可以用puts();

2.数组的初始化有几种方式

1 列出数组所有元素值进行初始化,比如,下面的列出了4个元素所有值

int a[4] = {1,2,3,4};

2 初始化数量少于元素数量,比如下面的数组有4个元素,但只给了两个初始值

int a[4] = {1,2};

等价于 int a[4] = {1,2, 0, 0};

3 不指定数组维数初始化

int a[] = {1,2,3,4};

4 特殊情况, 字符数组初始化

char x[5] = "abcd";

等价于 char x[5] = {'a', 'b', 'c', 'd', '\0'};

3.字符串数组的初始化方式

1、直接逐个初始化字符数组:

字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素。

1

char str[10]={ 'I',' ','a','m',' ','h','a','p','p','y'};

注意:如果花括号中提供的字符个数大于数组长度,则按语法错误处理;若小于数组长度,则只将这些字符数组中前面那些元素,其余的元素自动定为空字符(即'\0' )。

2、用字符串常量来初始化字符数组:

在c语言中,将字符串作为字符数组来处理。因此可以使用字符串来初始化字符数组。

1

char str[]={"I am happy"};

也可以省略花括号。

1

char str[]="I am happy";

但是,上述这种字符数组的整体赋值只能在字符数组初始化时使用,不能用于字符数组的赋值,字符数组的赋值只能对其元素一一赋值,下面的赋值方法是错误的。

1

2

char str[];

str="I am happy";//错误,字符数组的赋值只能按元素一一赋值

4.字符串数组的定义及初始化

可以的:

#include<string>

#include<iostream>

using namespace std;

void main()

{ string str[3]={"a","123","e1ghi"};

int i;

for ( i=0;i<3;i++ ) cout<<str[i]<<endl;

}

5.字符数组的字符数组的初始化

字符数组的初始化与数值型数组初始化没有本质区别。但它除了可以逐个给数组元素赋予字符外,也可以直接用字符串对其初始化。

(1)用字符常量逐个初始化数组。例如:

char a[8]={'i','l','o','v','e','y','o','u'};

用逐个初始化的方法与数值型数组初始化本质上是一样的,同样也可以进行完全赋初值及不完全赋初值,但是不完全赋值时没有赋值的元素被赋为空格。

当对全体元素赋初值时也可以省去长度说明。例如:

char c[ ]={'c',' ','p','r','o','g','r','a','m'};

这时C数组的长度自动定为9。

(2)字符串常量初始化数组。例如:

char c[ ]={'c',' ','p','r','o','g','r','a','m'};

可写为:

char c[ ]={"C program"};

或去掉{}写为:

char c[ ]="C program";

6.字符数组及其初始化

空格算字符的,不过你写的是空字符。。既然空格算字符了(空字符也占一个空间) 那么有十二个字母就越界了。。

这样的初始化是合法的 不过一定不要超过设置的最大长度。。。

如果不等于而是小于 那么剩下的就是随机的。。

如果首先不设置限制的话,那么系统会自动统计个数。

就是这样也可以char str2[]={'a',' ','b','c','d','e','f','g','h','i','j','k','l'};

楼上说的结束符不加也是可以的,只是为了输出等用途的时候,可以不用考虑数组长度

字符数组的定义和初始化方法有哪些

相关推荐:
  • 煮银耳莲子汤时没有冰糖可以用白糖代替吗?
  • 销售企业发出成本核算方法(工厂销售成本核算方法有哪几种)
  • 菥取名有什么寓意(湉取名什么寓意)
  • 登陆qq邮箱方法(登陆QQ邮箱有多少种方法)
  • 哈尔滨市商服供暖多少度达标?(哈尔滨市商服的供暖费用是多少)
上一篇:交警罚款用什么(交警罚款应计入哪个) 下一篇:创新创业学分模板

相关推荐

煮银耳莲子汤时没有冰糖可以用白糖代替吗?
销售企业发出成本核算方法(工厂销售成本核算方法有哪几种)
菥取名有什么寓意(湉取名什么寓意)
登陆qq邮箱方法(登陆QQ邮箱有多少种方法)
哈尔滨市商服供暖多少度达标?(哈尔滨市商服的供暖费用是多少)
培养学生自我控制的方式方法(提高自控能力的方法)
沈阳治小孩多动症方法(多动症治疗方法)
公司加薪的方法(加薪的方式)
课堂纪律不好老师方法(课堂纪律不好老师怎么办)
1波浪包括哪些要素?并叙述在实际计算时各个波浪要素的选取方法.(波浪的基本要素)
潮流时尚 写作素材 创新创业
生活常识 策划方案 安全知识
自考专业 家居生活 三农创业
励志故事 时尚穿搭 星座知识
热门分类

声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
 蜀ICP备2020033479号-4  Copyright © 2016  学习鸟. 页面生成时间:3.631秒

返回顶部