百科问答小站 logo
百科问答小站 font logo



C/C++ 数组的下标为何要从 0 开始,而不从 1 开始? 第1页

  

user avatar   be5invis 网友的相关建议: 
      

因为 C 的数组和指针很大程度上是重合的,而且有指针算数这个概念,而同时代的其他语言都是基 1,数组和也是指针是完全独立的。(C 这种做法对于操作系统编程比较方便,不信你在 pascal 里面给我实现个变长数组。)在这个前提下,使用偏移量而非传统的角标就更合适了。




  

相关话题

  C语言和C++中,为什么malloc函数需要传入申请的内存大小,而free时候却不需要传大小呢? 
  为什么 C++ std::map::operator[] 不提供 const 版本? 
  为什么我写代码时总是手滑把main打成mian? 
  C++对一个map不断insert delete元素(多任务中的一个任务),是否存在内存碎片问题? 
  C++中除以2和右移1有什么区别? 
  如何用最简短的二进制代码表示一张19*19的围棋棋盘的情况? 
  MFC中使用LoadLibrary动态加载dll有个数限制吗? 
  为什么 Unix 一切皆文件的设计这么成功,而 C++ 统一的流式 IO 则不甚成功? 
  请问#define PI 3.1416比float pi=3.1416有什么优势呢? 
  英语不好能学C语言和C++么? 

前一个讨论
在这个模型中,电场力作正功也会导致电势能减少吗?
下一个讨论
如何对一个元素只有0和1的数组进行排序?





© 2025-05-30 - tinynew.org. All Rights Reserved.
© 2025-05-30 - tinynew.org. 保留所有权利