wsgyj
C数组定义不可省略第二维及更高的维数 原因分析
C语言书中写到在定义二维数组时,可以省略第一维的坐标,如 int a[][3] = {{4,1,6},{2,3,5}}; 是合法的
但是不可以省略二维或者更高维的坐标。 如 int a[3][] = {{4,1,6},{2,3,5}}; 是不合法的
这是由编译器原理限制的。 如 定义a[2][3], 在我们引用数组元素a[1][2]时 编译器的寻址方式是 a+ 1*3+2,若不指定第二维
则编译器将不知道数组的列数也就无法寻址。
posted on 2009-09-11 21:11
gyj
阅读(735)
评论(0)
编辑
收藏
引用
所属分类:
C知识
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
相关文章:
C数组定义不可省略第二维及更高的维数 原因分析
C语言编译过程
网站导航:
博客园
IT新闻
BlogJava
博问
Chat2DB
管理
导航
C++博客
首页
新随笔
联系
聚合
管理
统计
随笔 - 3
文章 - 1
评论 - 1
引用 - 0
常用链接
我的随笔
我的评论
我参与的随笔
留言簿
给我留言
查看公开留言
查看私人留言
随笔分类
C++(1)
(rss)
C知识(2)
(rss)
随笔档案
2009年9月 (3)
文章分类
C学习经验(1)
(rss)
文章档案
2009年9月 (1)
搜索
最新评论
1. re: C语言编译过程
up 一个
--zhaoyg
阅读排行榜
1. 关于VC中 error C2871: 'std' : does not exist or is not a namespace(1601)
2. C语言编译过程(791)
3. C数组定义不可省略第二维及更高的维数 原因分析(735)
评论排行榜
1. C语言编译过程(1)
2. C数组定义不可省略第二维及更高的维数 原因分析(0)
3. 关于VC中 error C2871: 'std' : does not exist or is not a namespace(0)
Powered by:
C++博客
Copyright © gyj