- 浏览: 279246 次
- 性别:
文章分类
最新评论
下面介绍一下关于数组的一些说明:
- 在数组声明时必须定义数组长度,但也可利用空的方括弧[]对数组初始化,使编译器自动根据列表中的值自动计算数组长度。 例:
int array[12];
int array[]={1,2} //
但是若数组声明的方式是这样的:
int array[12] = {1,2} //其余未被声明的会初始化为0
即:如果不初始化数组,数组元素和未初始化的普通变量一样,其中存储的是无用的数组;但若部分初始化数组,为初始化的元素则被设置为0.
2. C不支持把数组作为一个整体来进行赋值,也不支持用花括号括起来的列表形式进行赋值(初始化的时候除外) 例:
#define SIZE 5 int main(void) { int oxen[SIZE] = {1,2,3,4} //这里可以 int yaks[SIZE]; yaks = oxen; //不可以 yaks[SIZE] = oxen[SIZE]; //不正确 yaks[SIZE] = {4,5,5,7}; //不起作用 }
3.二维数组初始化
int rain[3][3] = { {1,2},
{3,4,5}, //用这种方式初始化相当于 1,2,0,3,4,5,1,0,0
{1}
}
或
int rain[3][3] = {1,2,3,4} //用这种方式初始化相当于1,2,3,4,0,0,0,0,0
4.关于数组名
int array[12];
以这种方式声明数组时,数组名其实是数组第一个元素的地址即与&array[0]等价,也就是说array是一个地址常量。可以用array +1 表示数组中第二个元素的地址,但不能用++array形式,因为++后面只能接变量而不能接常量。
5.array[1] 和*(ar +1 )是等价的,而且不管ar是一个数组名还是一个指针变量,这两个表达式都可以工作。
发表评论
-
C中结构体
2013-01-09 15:47 591把结构体保存到文件中,用fwrite()函数: fwrite ... -
关于socket编程中基本函数介绍
2012-11-03 13:57 997源自:http://blog.sina.com.cn/s/bl ... -
C中需要注意的小问题
2012-09-27 08:59 7831.在用scanf()函数读入double型数值时要用%lf的 ... -
指针和多维数组
2011-12-26 10:03 786摘自:《C primer plus》 指针和多位数组 ... -
C中<ctype.h>库
2011-12-19 20:21 695标准库<ctype.h> 1 ... -
C中double类型数据的输入和输出
2011-12-19 10:04 12347double a; scanf(" ... -
C中printf()和scanf()函数说明
2011-12-16 19:58 1559下面是对printf()和scanf()函数的说明: ... -
C中转义序列及其含义
2011-12-15 20:27 942转义序列: 序列 ... -
C中各数据类型取值范围
2011-12-15 19:31 13651.标准头文件<limits.h>中包含了 ... -
C中常用的类型转换函数
2011-12-14 17:34 785源自:http://hi.baidu.com/hao_%BF% ... -
C语言格式化输出系统时间
2011-12-14 17:04 5899源自:http://blog.csdn.net/jiadeli ... -
C中目标代码文件,可执行文件和库
2011-12-14 10:19 1932C编程的基本策略是使用程序将源代码文件转换为可执行 ... -
vs2008下vc的库函数及头文件存放位置
2011-12-13 22:14 4504在写C/C++程序时总会在开头包含一些头文件,如:#inclu ... -
malloc()函数
2011-12-12 17:35 0待写 -
用C写的模拟掷骰子程序
2011-12-12 16:47 2320整理自:《C Primer Plus》第五版 此程序包 ... -
C中字符串的输入输出及相关函数
2011-12-27 21:59 3821//本节内容摘自对Stephen Prata的《C Prime ... -
指针的基本操作以及关于指针的注意事项
2011-12-11 17:42 895一. 指针的基本操作有:赋值(assignment),求值(v ... -
关于*与++的优先级
2011-12-11 16:53 1663C中一元运算符*和++具有相等的优先级,但它们在结合时是从右向 ... -
C中关于数组参数的传递
2011-12-09 11:43 894编写一个对数组进行操作的函数,目的是返回数组内所用元素的和。 ... -
C语言中对sizeof()和strlen()的说明
2011-12-09 10:01 10931.sizeof函数 sizeof函数返回表达式所占的内存空 ...
相关推荐
正在BASIC语言中,DIM A(N)语句可以定义一个包含N个元素(N是未知数)的数组,而在C语言中,定义数组时必须要明确地说明其大小.但在设计程序时,经常会遇到数组元素个数未知的情况,数组的大小在最初不能预料,只有在程序...
规则说明: 设有一个数组A: array[0..N-1];存放的元素为0-N-1(1)之间的整数,且 。例如当N=6时,有:A=(4,3,0,5,1,2)。此时,数组A的编码定义如下: A[0]编码为0; A[i]编码为:在A[0],A[1],…,A[i-1]中比A[i]的值小...
c语言指针数组 ·详解数组指针与指针数组 ·数组指针 ⾸先我们需要了解什么是数组指针以及什么是指针数组,如下图: int *p[5]; int (*p)[5]; 数组指针的意思即为通过指针引⽤数组,p先和*结合,说明了p是⼀个指针...
数组PPT,简要说明数组的概念等基本知识
类别:数组 时间限制:1S 内存限制:256Kb 问题描述: 给定一个包含n个整数的数列A0,A1,A2,…An-1和一个整数k,依次输出 k在序列中出现的位置(从0开始计算)。 输入说明: 输入由两行构成,第一行为两个整数n...
基于c语言的数据结构程序设计 附有报告
只是为了说明用指向数组的指针作函数参数而举的例子。用函数average求总平均成绩,用函数search找出并输出第i个学生的成绩。有些网上给出的方法有bug,这个是我自己修改过的程序。
c语言数组 数组可以说是目前为止讲到的第一个真正意义上存储数据的结构。虽然前面学习的变量也能存储数据,但变量所能存储的数据很有限。不仅如此,数组和指针(后续会讲)是相辅相成的,学习数组可以为学习指针打下...
c语言求二维数组鞍点 在上面的代码中,我们定义了一个3×3的二维数组matrix,并在main()函数中调用findSaddlePoint()函数来找到鞍点。findSaddlePoint()函数使用两个嵌套的循环来遍历数组,首先在每一行找到最小值...
说明:常用的有以下几种二维数组的表示方法: (1)、第一种是普通的二维数组的表示方法。 (2)、第二种是用一维数组来表示二维数组,从显示的元素地址可以看出,二维数组和一维数组表示的二维数组在内存中的储存...
如果一个数组中的所有元素保存的都是指针,那么我们就称它为指针数组。指针数组的定义形式一般为: dataType *arrayName[length]; [ ]的优先级高于*,该定义形式应该理解为: dataType *(arrayName[length]); ...
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。...【项目质量】:所有源码都经过严格测试,可以直接...
C语言教学课件:14-3_指针数组(用于处理二维数组或多个字符串).ppt
这样两者的区别就豁然开朗了,数组指针只是一个指针变量,似乎是C语言里专门用来指向二维数组的,它占有内存中一个指针的存储空间。指针数组是多个指针变量,以数组形式存在内存当中,占有多个指针的存储空间。 还...
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。...【项目质量】:所有源码都经过严格测试,可以直接...
c语言教程 数组的表示方法使用 注意问题 举例说明
与指针有关的各种说明和意义见下表。 int *p; p为指向整型量的指针变量 int *p[n]; p为指针数组,由n个指向整型量的指针元素组成。 int (*p)[n]; p为指向整型二维数组的指针变量,二维数组的列数为n int *p() p为...
主要介绍了C语言中二维数组指针的简要说明,文章后也附送一个小练习题进行巩固,需要的朋友可以参考下