C语言数组初始化方式
//一维数组初始化
//初始化方法1
int arr[5] = {3,7,2,1,9}; //定义了一个长度是5的数组,并给每个元素赋值 //初始化方法2
int arr[5] = {3,7}; //给下标为0和1的元素赋了初值,剩余未初始化的元素,默认值都是0 //初始化方法3【常用】
int arr[5] = {0}; //初始化一个全部元素为0的数组,通常这个方法在清0数组时使用 //初始化方法4【常用】
int arr[] = {3,7,2,1,6,9,13} //常用的方法,不在arr[]括号里输入固定的数组长度,直接给元素赋值,编译器会自动求取数组元素的个数 //初始化方法5
int arr[] = {0}; //不常用的方法,这样相当于定了只有1个元素的数组,并且值为0 //初始化方法6【常用】
int arr[10]; //定义了一个长度是10的数组
arr[0] = 5; //后续赋予其中元素的值,arr[0]括号数字里是元素下标
arr[1] = 6;
arr[2] = 7; //剩余未初始化的元素,默认值是随机数
//二维数组初始化 //常规初始化
int arr[3][5] = {{2,3,54,56,7},{2,67,4,35,9},{1,4,9,3,78}}; //不完全初始化
int arr[3][5] = {{2,3},{2,67,4},{1,4,16,78}}; //定义了一部分元素值,未被初始化的元素值,默认都为0 int arr[3][5] = {0}; //定了一个所有元素初值全部为0的二维数组 int arr[3][5] = {2,3,4,5,6,7,8,9,99,2,16,78}; //【一般不这么写因为降低代码可读性】但是系统会自动分配数组行和列 //不完全制定行列初始化
int arr[][] = {1,23,4,56,7,8}; //【这一条是错误范例】二维数组定义,至少需要制定列值
int arr[][3] = {1,23,4,56,7,8}; //指定列值3以后,系统会自动分配2行
C语言数组初始化方式的更多相关文章
- c语言数组初始化问题
2147483648字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素. charstr[10]={'I','','a','m','',‘h’,'a','p','p','y'}; 即把10 ...
- C语言 数组初始化的三种常用方法({0}, memset, for循环赋值)以及原理
C语言中,数组初始化的方式主要有三种: 1.声明时,使用 {0} 初始化: 2.使用memset: 3.用for循环赋值. 那么,这三种方法的原理以及效率如何呢? 请看下面的测试代码: #define ...
- C语言数组初始化
例如: int a[15] = {0}; 第一种,编译器会把第一个初始化值赋给数组的第一个元素,然后用0赋给其余的元素.如果没有给出初始值,编译器不会去做初始化工作.这样简洁的方式让代码更加高效. 还 ...
- C语言数组初始化全部为0
] = {}; 编译器会把第一个初始化值(这里是0)赋给数组的第一个元素,然后用默认值0赋给其余的元素.如果没有给出初始值,编译器不会去做初始化工作.这样简洁的方式让代码更加高效. 另一种,就是mem ...
- c语言数组初始化 蛋疼
一个一般性的结论 int a[100]={N}//N是一个大于等于0的整数 以上代码只会把a[0]初始化为N,其它内存单元都会被初始化为0 int a[100]={5} 这行代码它只会把a[0]初始化 ...
- Golang的数组初始化方式及for-range遍历
package main import ( "fmt" ) func main() { ]], , } //定义并初始化长度为3的数组 fmt.Println(arr1) //[1 ...
- C语言数组初始化的问题
- c语言数组不同初始化方式的结果
第一种初始化方式: #include <stdio.h> int main() { int numbers[5]={12,14}; for (int i=0; i<5; i++) { ...
- Java中数组的初始化方式
Java中数组的初始化方式 初始化方式有两种: 1.静态初始化:初始化时由程序猿显式指定每一个数组元素的初始值,由系统指定数组长度 2.动态初始化:初始化时由程序猿仅仅指定数组长度,由系统为数组 ...
随机推荐
- Portswigger web security academy:SQL injection
Portswigger web security academy:SQL injection 目录 Portswigger web security academy:SQL injection SQL ...
- SSM整合大体步骤
SSM整合步骤: 1. 导入jar spring: springMVC: mybatis: 第三方支持:log4j,pageHelper,AspectJ,jackson,jstl 2. 搭建sprin ...
- JavaScript中DOM与BOM的区别
1.BOM BOM全称为Brower Object Model,中文翻译为浏览器对象模型,提供了独立于内容而与浏览器窗口进行交互的对象.描述了与浏览器进行交互的方法和接口.通过BOM可以用来获取或设置 ...
- 利用实体bean对象批量数据传输处理
利用实体bean对象批量数据传输处理 需求 现在有两方数据库表结构相同,一方A.另一个方B,现想从A处查询出多个表的数据,传输到B地保存起来. 解决方案1 最简单粗暴的方法就是,查询出A处相关表的数据 ...
- C++ primer plus读书笔记——第12章 类和动态内存分配
第12章 类和动态内存分配 1. 静态数据成员在类声明中声明,在包含类方法的文件中初始化.初始化时使用作用域运算符来指出静态成员所属的类.但如果静态成员是整形或枚举型const,则可以在类声明中初始化 ...
- 【Cocos2d-x】屏蔽Emoji并解决由于Emoji导致的崩溃问题
IOS的Emoji表情因为编码问题,在Android手机上无法正常显示,如果当前的cc.Label节点使用的是系统字,在系统字库中找不到对应编码的字符,会导致崩溃. 为了解决这个问题,又要兼顾新老版本 ...
- [bug] HDFS:DataXceiver error processing WRITE_BLOCK operation
文件格式有误,导致读取错误,我的是把制表符敲成了空格
- 【打印机】无法连接 fail to connect to server cups 服务器错误 打印机
打印机 fail to connect to server cups 服务器错误兆芯 打印机 连不上了####message可知 服务fail## systemd: cups.servi ...
- $(cd "$(dirname "$0")",pwd) 解析
xx.sh 文件内容如下: #!/bin/bash BIN_FOLDER=$(cd "$(dirname "$0")";pwd) echo $BIN_FOLDE ...
- STM32自己的封装库
以前一直使用STM32的标准库,需要一步步地将代码加进去,将编译选项设置好,然后再编译整个工程. 这个编译过程是一个相当慢的过程!完全编译大约需要一支烟的时间.每次建立工程都这么编译,是一个相当浪费时 ...