Objective-C 字符数组

 

 

  在接下来的时间里面,我们准备为大家介绍Objective-C中的“字符数组”。


  字符数组———在Objective-C中用于存放字符数据的数组称为字符数组。

             

 1、接下来,我们首先看看"字符数组"的定义格式:

 

  类型关键字  数组名[常量表达式];

 

   例子:char a[9];

 

  其实,字符数组的定义格式以及相应的使用,我们已经在学习数组这个知识点已经学习过并使用过了。现在,我们主要为大家介绍如何使用字符数组去存储“字符串”。

   

 

    

  2、例子:

 

      (1)char a[]={"eato2"};

 

      (2)char b[]="eato2";

 

      (3)char c[]={'e','a','t','o','2'};

 

      例子分析:

 

      1.通过上面的例子,我们可以看出,(1)和(2)两种赋值方式比较直观,就是把需要保存的"字符串"写上,区别在于(1)加上大括号,而(2)没有大括号。但结果是一样的。

      2.而(3)这种方式,就是把字符串拆分开一个一个"字符"来存储。

      3.在上面的例子中,数组在定义时"中括号"之间并没有说明数组大小的常量值。这个原因是,如果在数组定义时立即进行赋值,那么,系统就可以根据"赋值的数量"来确定数组的大小,所以,就可以在定义
时略省数组大小的设定。但是,如果你一定要加上也是可以的。


 

 

 

  3、字符数组存放“字符”与“字符串”的区别:

 

   字符串的结尾处,系统会自动加上'\0'来说明字符串结束,而字符就没有。

    

      例子:

      (1)char a[]={"eato2"};

 

      (2)char b[]="eato2";

 

      (3)char c[]={'e','a','t','o','2'};

 

      (4)char d[]="a";

      

      (5)char ad[]='a';

 

      例子分析:

     (1)——(3)最后的存储结果都是eato2\0

     (4)最后的存储结果是a\0

     (5)最后的存储结果是a

 

     从上面的例子分析中,我们可以知道,字符串在存储时的长度是字符串中字符的总数再加上1,因为系统会自动加上'\0',所以,例子中的(1)——(3)里面所定义的数组它们各自的总长度是6,而

(4)里面所定义的数组的总长度是2,而(5)所定义的数组长度为1因为它存放的是“字符”。

 

 

 

 

    4  

      例子:

      (1)char a[5]={"eato2"};

 

      (2)char b[5]="eato2";

 

      (3)char c[5]={'e','a','t','o','2'};

 

      (4)char d[1]="a";

      

      (5)char ad[1]='a';

 

      例子分析:

     (1)——(3)系统都会向你报告有错误,原因就是字符串的长度大于数组定义的长度。原因就是,系统会给字符串自动加上'\0',所以,这里d数组定义的大小即[]之间的这个值,就要标记为6或大于6的数值而不是5。

     (4)系统都会向你报告有错误,原因就是字符串的长度大于数组定义的长度。原因就是,系统会给字符串自动加上'\0',所以,这里d数组定义的大小即[]之间的这个值,就要标记为2或大于2的数值。而不是1。

     (5)正确,因为字符只占用一个存储空间。

 

     从上面的例子分析中,我们可以知道,字符串在存储时,如果[]之间的这个数组的大小要写上的话,那么,这个值就要在原来字符串的总个数的基础上再加上1,否则,就会出错。

 

 

 

 5  字符串数组的调用方式:

 

      调用方式就是,直接调用数组的名字。

    

      例子:

      (1)char a[]={"eato2"};

         a;

 

      (2)char b[]="eato2";

         b;

 

      (3)char c[]={'e','a','t','o','2'};

         c;

 

      (4)char d[]="a";

         d;

      

 

      例子分析:

     (1)——(3)调用数组名输出的结果都是eato2

     (4)调用数组名输出的结果是a

 

     从上面的例子分析中,我们可以知道,字符串在输出时,系统自动加上的'\0'是不会输出的。

 

 

 

  非常好,现在,我们已经掌握了Objective-C中的“字符数组”这个知识点,但是,如何去运行用它呢?所以,我们就要通过下方的按钮进入到游戏中,然后,运用它去完成任务,这样,才可以加深大家对每个知识点的理解和运用,以及“尽快进入到编程的状态”

 

  不要停留在理论规则上面,快动起来吧!

 

 

(通过游戏模式学习与训练,需要在电脑上运行)

进入游戏学习与训练