C#之常见数组编码错误

摘抄自C#本质论(第四版,P55)

常见错误 错误描述 改正后的代码
int numbers[] 用于声明数组的方括号放在数据类型之后,而不是在变量标识符之后 int[] numbers;

int[] numbers;

numbers={42,84,168};

如果是在声明之后再对数组进行赋值,需要使用new关键字,并可选择指定数据类型
int[] numbers;

numbers=new int[]{42,84,168};

int[3] numbers={42,84,168}; 不能在变量声明中指定数组大小 int[] numbers={42,84,168};
int[] numbers=new int[]; 除非提供数组字面量,否则必须在初始化时指定数组大小。 int[] number=new int[3];
int[] numbers=new int[3]{} 数组大小指定为3,但数组字面量中没有任何元素。数组的大小必须与数组字面量中的元素个数相符。 
int[] numbers=

new int[3]{42,84,168};


int[] numbers=new int[3];

Console.WriteLine(numbers[3]);

数组索引起始于零。因此,最后一项的索引比数组长度小1。注意,这是运行时错误,而不是编译时错误。
int[] numbers=new int[3];

Console.WriteLine(numbers[2]);


int[] numbers=new int[3];

numbers[numbrs.Length]=42;

和上一个错误相同:需要从Length减去1来访问最后一个元素。注意,这是运行时错误,而不是编译时错误。
int[] numbers=new int[3];

numbers[numbers.Length-1]=42;


int[] numbers;

Console.WriteLine(numbers[0]);

尚未对numbers数组进行实例化,所以它暂时是不可访问的。
int[] numbers={42,84};

Console.WriteLine(numbers[0]);


int[,] numbers=

{{42}.{84,42}};

多维数组的结构必须一致 int[,] numbers={{42,168},{84,42}};

int[][] numbers=

{{42,84}.

{84,42}};

交错数组要求对数组中的数组进行实例化。 int[][] numbers={new int[]{42,84},new int[]{84,42}};
时间: 2024-10-20 11:48:20

C#之常见数组编码错误的相关文章

C语言中常见的内存错误与解决方法

常见的错误 关于内存的一些知识已在内存分配中提及,现记录与分享常见的内存错误与对策. 类型 1:内存未分配成功,却使用了它. 方   法:在使用之前检查指针是否为NULL. 1)当指针p是函数的参数时,在函数入口处用语句assert(p!=NULL)进行断言检查. 2)当使用malloc或new来申请内存时,应该用if(p != NULL)进行防错检查. 类型 2:引用了尚未初始化的指针 原   因:内存的缺省初始值究竟是什么并没有统一的标准,在使用之前都进行初始化. 1)没有初始化的观念. 2

ssh整合常见的后台错误

ssh整合以及常见的后台错误 摘自网络 jsp和Servlet之间传值出现乱码的解决方案 采用设置字符集的方式 request.setCharacterEncoding("utf-8"); 在web.xml文件里定义编码,同时在CoreFilter类里定义编码为utf-8 <filter> <filter-name>encodingFilter</filter-name> <filter-class>fengke.filter.CoreF

常见动态内存错误---内存泄漏

常见动态内存错误 编译器不能自动发现动态内存错误,动态内存错误通常只能在程序运行时才能被捕捉到,而且错误原因不容易查找,错误本身也不容易捕捉,改错难度较大. 1.动态内存分配失败却继续操作 内存不足等有可能导致动态内存分配失败,所以使用new请求分配动态内存后一定要检查返回地址是否为NULL. 如用if(p==NULL) 或 if(p!=NULL)进行检查,未检查前不要操作动态内存空间. 2.动态内存空间未初始化就进行读操作 C++标准并未规定动态内存空间的默认值,程序无法预知该默认值的具体指.

Python常见字符编码间的转换

学习Python,字符编码间的转换是绕不过去的一只拦路虎,不把编码彻底搞明白,总有一天它会猝不及防坑你一把. Python2.x和Python3.x在字符编码的设置上也有很大区别(Python3未来将是主流,所以Python3为主),今天我们就来一起学习下. 上一篇文章里我已经简述了Python的常见编码了,这里就不再赘述了,还不清楚的小伙伴可以先去看下:     http://www.cnblogs.com/schut/p/8406897.html 一.Unicode 和 UTF-8的纠葛 U

6种常见的Git错误以及解决的办法

我们都会犯错误,尤其是在使用像Git这样复杂的东西时.如果你是Git的新手,可以学习如何在命令行上开始使用Git.下面介绍如何解决六个最常见的Git错误. Photo by?Pawel Janiak?on?Unsplash 1. 最后一次代码提交时有拼写错误 经过几个小时的编码后,拼写错误很容易带到你的提交消息里面. 幸运的是,有一个简单的解决方案. git commit --amend 这会打开编辑器,并允许你更改最后一次提交消息. 没有人知道你把"addded"单词多加了一个字母&

Java代码常见的十种错误

每一个程序员在编写代码的过程中都免不了出现错误或是小的失误,这些小的错误和失误往往使得程序员还得返工.那么,如何才能尽量避免这些错误的发生呢?笔者总结只有在日常的编写代码中总结出经验,在这篇文章中,笔者列出了10个Java编程中常见的错误,你可以把这些错误添加到你的代码审查的检查列表中,这样在经过代码审查后,你可以确信你的代码中不再存在这类错误了. 一.常见错误1:多次拷贝字符串 测试所不能发现的一个错误是生成不可变(immutable)对象的多份拷贝.不可变对象是不可改变的,因此不需要拷贝它.

转 常见视频编码方式以及封装格式

常见视频编码方式以及封装格式 常见视频编码方式 所谓视频编码方式就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式.视频流传输中最为重要的编解码标准有国际电联的H.261.H.263.H.264.H.265,运动静止图像专家组的M-JPEG和国际标准化组织运动图像专家组的MPEG系列标准,此外在互联网上被广泛应用的还有Real-Networks的RealVideo.微软公司的WMV以及Apple公司的QuickTime等. AVI AVI 是 Audio Video I

最常见的HTTP错误

1. HTTP 500错误(内部服务器错误)对对HTTP 500错误的定义已经充分证明了这是一个最常见的HTTP错误. 一般来说,HTTP 500 错误就是web服务器发生内部错误时返回的信息. 例如,web服务器过载时将无法正确处理访问请求.根据Google的搜索数据统计,HTTP 500 错误发生机率是404错误的两倍: 2. HTTP 404错误(文件未找到)大多数人都知道这个错误. 当用户试图访问Web服务器(通常是一个网页)上某个实际不存在的资源时,就会发生404错误. 404错误可能

一个让人崩溃的编码错误

最近写了一个接受socket数据包,然后再重组上层协议包的东西.每次read到数据就将数据添加到一个链表的尾部,然后检查是否收到了一个完整的包.为了减少内存碎片,把用过的链表节点添加到另外一个链表中,这样下次可以从这个cache链表中重用节点. 在debug的时候我把cache list中的数据打印出来,代码如下: struct seg_node {     void* buf;     unsigned int capacity;     void* data; /* data >= buf,