/*
**test19.cpp : Defines the entry point for the console application.
**系统winXP SP3 32位.
**关于数组与字符数组、字符指针与字符串的区分
*/
#include "stdafx.h"
int main(int argc, char* argv[])
{
int iNum1[100];
int iNum2[] = {0,1,2,3,4,5}; //元素个数为5,下标为0-4
//int iNum3[5] = {0,1,2,3,4,5}; //元素个数为5,下标为0-4,error-too many initializers
int iNum4[10] = {1,2,3,4,5}; //元素个数为10,下标为0-9,后面的值自动初始化为0
//int iNum5[5] = {0,,2,,4,5}; //错误,不能跳过某些值初始化
int iNum6[2][2] = {1,2,3,4}; //数组是以列序优先存储的,即先存1,3再存2,4
//delete iNum6; //只删除了第一个元素,后面没有
delete []iNum6; //数组空间全部删除
return 0;
}
Tips1:数组在内存中是连续储存的
Tips2:注意数组是不会进行越界的检测的
Tips3:字符数组、字符指针与字符串的区分:字符数组就是元素为字符变量的数组;而字符串是字符与‘\0’的组合,所以通常字符串的长度要加1(加上结束符\0就可以很方便的知道字符串的具体长度);字符指针则是指向字符变量的指针,可以通过*或&来取值或地址。