038.Global Array 全局数组

来源:互联网 发布:iphone远程控制mac 编辑:程序博客网 时间:2024/06/06 01:52
---------------  main.m  ---------------
#import <Foundation/Foundation.h>

int intArr[5]; // 使用整数值指定数组的长度,该数组所有元素默认为0
#define MY_MAX 4 // 定义宏变量,MY_MAX宏变量在编译时会替换成4
NSString* strArr[MY_MAX];  // 该数组长度为4,所有元素默认为nil
const int numbers = 6; // 使用const修饰的变量其实是常量
float floatArr[numbers]; // 该数组长度为6,所有元素默认为0.0
int len = 5; // 全局数组不能使用变量或包含变量的表达式指定长度
//int arr1[len]; // 这是错误写法,因为不满足全局数组对数组长度的要求
double doubleArr[] = {1.2, 3.2}; // 不交代数组的长度,系统会推断数组长度为2
double dArr[5] = {20.4, 10.2}; // 只指定前两个元素的值,后3个元素会默认为0.0

int main() // 遍历以上数组
{
    for(int i = 0 ; i < 5 ; i++)
    {
        NSLog(@"%d", intArr[i]);
    }
    for(int i = 0 ; i < MY_MAX ; i++)
    {
        NSLog(@"%@", strArr[i]);
    }
    for(int i = 0 ; i < numbers ; i++)
    {
        NSLog(@"%f", floatArr[i]);
    }
    for(int i = 0 ; i < 2 ; i++)
    {
        NSLog(@"%g", doubleArr[i]);
    }
    for(int i = 0 ; i < 5 ; i++)
    {
        NSLog(@"%g", dArr[i]);
    }
}

一、编写本节代码的具体步骤:
1.参照003节的代码编写步骤。

二、本节代码涉及到的知识点:
1.定义数组的语法格式:type arrayName [length]。
2.如果是定义全局数组,length不允许是变量。
  如果是定义局部数组,length可以常量、变量或者整数值。
  全局数组与局部数组的区别,详情请参考《疯狂iOS》第67页。
3.如果是整型/字符型数组,初始化之前,所有元素默认为0。
  如果是浮点型数组,初始化之前,所有元素默认为0.0。
  如果是指针型数组,初始化之前,所有全速默认为nil。
4.数组初始化的语法格式:
  type arrayName [length] = {ele1, ele2,,eleN};

0 0