社区
C语言
帖子详情
超菜问题:为什么位置编号等喜欢用0,1,......n-1,而不用1,2,....,n?
flyhigher402
2003-10-17 09:59:49
比如:
我们一般喜欢用for(j=0;j<n;j++)
而很少用for(j=1;j<n+1;j++) ???
有时好像用后者更方便啊.
高手别见笑.
...全文
64
15
打赏
收藏
超菜问题:为什么位置编号等喜欢用0,1,......n-1,而不用1,2,....,n?
比如: 我们一般喜欢用for(j=0;j<n;j++) 而很少用for(j=1;j<n+1;j++) ??? 有时好像用后者更方便啊. 高手别见笑.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
RookieStar
2003-10-18
打赏
举报
回复
其实最符合习惯的还是从1开始的,但习惯以后从0开始也会觉得很自然……
rixwyg
2003-10-18
打赏
举报
回复
高手,见笑了!
要看是什么情况:
如果是数组的下标的话,那就应该从0不始了,
倘若不然系统就将要报错的,
int a[4]={1,2,3,6};
如果是从1开始,a[4];是数组还是第四个元素。
系统就分不清了,如果从0到n-1就不同了但是别可以,
这只是语言的格式而已。
langzi8818
2003-10-18
打赏
举报
回复
FT
stormwolf
2003-10-18
打赏
举报
回复
大家说的好清楚,我就不说了~~
不用0怎么看的出我们是用C的呢~
呵呵,玩笑~
cupidvenus
2003-10-18
打赏
举报
回复
这个习惯是从使用数组遗留下来的。
williamVII
2003-10-18
打赏
举报
回复
C的很多特性是为了写编译器方便,
因为早期的使用者就是写编译器的人.
用0代表位移,编译起来更直接...
以后大家就都这么用了...
(见<C专家编程>)
Liulingbing
2003-10-17
打赏
举报
回复
C语言的下标为0体现了计算机的特性,
比如说计算机现在只能表示8个数,
它只会用0,1,2,3,4,5,6,7
不会认识8。
C程序员一直是被认为较专业的计算机人士,当然要base 0了。
mme
2003-10-17
打赏
举报
回复
这个是由于c语言的数组从0开始而形成的。
只要你习惯了,就会发现它的好处。
而basic就是从1开始的。所以从basic转学c在开始的时候会很不习惯。
psbeond
2003-10-17
打赏
举报
回复
c语言数组下标从0开始(当时就这么规定了,如果当时规定从1开始,就没这个问题了),对数组操作时经常可以看到类似代码:
int arry[5];
for(int i=0; i<5; i++
{
arry[i] = i;
}
如果象你说的从1开始就得这样:
int arry[5];
for(int i=1; i<6; i++)
{
arry[i-1] = i;
}显然不如第一种,久了就成风格了
TianGuangZao
2003-10-17
打赏
举报
回复
0 开头,称为“不对称边界法”。用习惯了有不少好处。
《c 陷阱和缺陷》里有最详细的讨论。
liem
2003-10-17
打赏
举报
回复
因为数组的下标是从0开始的,因此写for循环对数组进行操作从0开始。习惯后,用for就从0开始了。
daizh
2003-10-17
打赏
举报
回复
这个跟你使用的具体情况有关。对于数组一般操作要用for(j=0;j<n;j++)a;主要是数组的下标就是与它的首地址的offset(偏移量),a[0]表示与首地址偏移0,即是数组的第一元素,以下依次类推。
tbmac
2003-10-17
打赏
举报
回复
0-based is developer way
1-based is user way
MPU
2003-10-17
打赏
举报
回复
以上说的是在 数组中....
MPU
2003-10-17
打赏
举报
回复
0 位置浪费了
0 - n 正好确定 n 个元素的边界...
运维面试题(1024水篇)
NETWORK 1 请描述TCP/IP协议中主机与主机之间通信的三要素 参考答案 IP地址(IP address) 子网掩码(subnet mask) IP路由(IP router) 2 请描述IP地址的分类及每一类的范围 参考答案 A类1-26 B类128-191 C类192-223 D类224-239组播(多播) E类240-254科研 3 请描述A、B、C三类IP地址的默认子网掩码 参考答案 A类255.0.0.0 B类255.255.0.0 C类255.255.255.0 4 请描述预留给企业的私有
实施运维企业面试题-5
NETWORK 1 请描述 TCP/IP 协议中主机与主机之间通信的三要素 参考答案 IP 地址(IP address) 子网掩码(subnet mask) IP 路由(IP router) 2 请描述 IP 地址的分类及每一类的范围 参考答案 A 类 1-26 B 类 128-191 C 类 192-223 D 类 224-239 组播(多播) E 类 240-254 科研 3 请描述 A、B、C 三类 IP 地址的默认子网掩码 参考答案 A 类 255.0.0.0 B 类 255.255.0.0 C 类
TensorFlow 1.x 深度学习秘籍:1~5
原文:TensorFlow 1.x Deep Learning Cookbook 协议:CC BY-NC-SA 4.0 译者:飞龙 本文来自【ApacheCN 深度学习 译文集】,采用译后编辑(MTPE)流程来尽可能提升效率。 不要担心自己的形象,只关心如何实现目标。——《原则》,生活原则 2.3.c 一、TensorFlow 简介 曾经尝试仅使用 NumPy 用 Python 编写用于神经网络的代码的任何人都知道它很繁琐。 为一个简单的单层前馈网络编写代码需要 40 条线,这增加了编写代码和执行时间方
linux常用命令-part3
中文怎么发音 Ubuntu 有奔头,乌版图 Fedora 费德勒,菲朵拉 Debian 迪扁,德槟 CentOS 桑托斯 森头斯 Linux发展历史: 1) RedHat ---> 1.RedHat 2.CentOS 3.Fedora 桌面图形系统 rpm, yum 命令 2)
雅马哈YAMAHA-RX-V377.pdf
00_RX-V377_om_ZH.book 1 ページ 2014年2月6日 木曜日 午後4時14分 收音扩音机 使用说明书 在使用本机前,请阅读随附的小册子 “安全手册”。 中文Zh 2 目录 配件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 功能 5 本机功能介绍 .
C语言
69,336
社区成员
243,078
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章