2_C语言中的数据类型 (九)数组】的更多相关文章

1          数组 1.1       一维数组定义与使用 int array[10];//定义一个一维数组,名字叫array,一共有10个元素,每个元素都是int类型的 array[0] = 20; array[1] = 30; array[9] = 80; //array[10] = 100;//错误,没有 array[10]这个元素 1.2       数组在内存的存储方式 数组在内存中就是一段连续的空间,每个元素的类型是一样的 1.3       一维数组初始化 int arra…
1          字符串与字符数组 1.1       字符数组定义 char array[100]; 1.2       字符数组初始化 char array[100] = {'a', 'b', 'c','d'}; char array[100] = "abcd"; char array[100] = { 0 }; char array[] = "abcd"; 1.3       字符数组使用 1.4       随机数产生函数rand与srand 头文件st…
1          条件分支语句 1.1       关系运算符 在C语言中0代表false,非0代表真 1.1.1          < 小于 1.1.2          <= 小于等于 1.1.3          > 大于 1.1.4          >= 大于等于 1.1.5          == 等于 1.1.6          != 不等于 1.2       关系运算符优先级 前四种相同,后两种相同,前四种高于后两种优先级 1.3       逻辑运算符 1…
1          字符串格式化输出和输入 1.1       字符串在计算机内部的存储方式 字符串是内存中一段连续的char空间,以’\0’结尾 “”是C语言表达字符串的方式 1.2       printf函数,putchar函数 printf格式字符 字符 对应数据类型 含义 d int 接受整数值并将它表示为有符号的十进制整数 hd Short int 短整数 hu Unsigned short int 无符号短整数 o unsigned int 无符号8进制整数 u unsigned…
1.1       sizeof关键字 sizeof是c语言关键字,功能是求指定数据类型在内存中的大小,单位:字节 sizeof与size_t类型 1.1       int类型 1.1.1          int常量,变量 int就是32位的一个二进制整数,在内存当中占据4个字节的空间 1.1.2          printf输出int值 %d,输出一个有符号的10进制整数,%u,代表输出一个无符号的十进制整数 1.1.3          printf输出八进制和十六进制 %x,代表输出…
2.1 常量就是在程序中不可变化的量,常量在定义的时候必须给一个初值. 1.1.1          #define 定义一个宏常量 1.1.2          const 定义一个const常量 2.2       字符串常量 “hello world” 对于#define类型的常量,c语言的习惯是常量名称为大写,但对于普通const常量以及变量,一般为小写结合大写的方式 示例代码: #include<stdio.h> #define MAX 10 //定义一个宏常量,值为10 #defi…
1          运算符表达式和语句 1.1       基本运算符 1.1.1          = 数据对象:泛指数据在内存的存储区域 左值:表示可以被更改的数据对象 右值:能赋给左值的量 1.1.2          + 加 1.1.3          – 减 1.1.4          * 乘 1.1.5          / 除 1.1.6          % 取余数 1.1.7          += 加等于 1.1.8          -= 减等于 1.1.9     …
1.1       二进制数.位.字节与字 我们习惯于十进制的数:10,12等 一个位只能表示0,或者1两种状态,简称bit,一个位是一个bit 一个字节为8个二进制,称为8位,简称BYTE,8个比特是一个字节 一个字为2个字节,简称WORD. 两个字为双字,简称DWORD 1.2       八进制 八进制为以8为基数的数制系统,C语言当中0表示八进制,0666; 1.3       十六进制 十六进制值16为基数 的数制系统,C语言中用0x表示十六进制 十进制 十六进制 二进制 0 0 00…
1          循环语句 1.1       while while(条件),如果条件为真,循环继续,条件为假,循环结束 while (1)..是死循环的写法 1.2       continue 循环遇到continue语句,不再执行continue下面代码,而是直接返回到循环起始语句处继续执行循环 1.3       break 循环遇到break语句,立刻终端循环,循环结束 1.4       do while do 复合语句 while (条件); 对于do while来讲,循环的…
1.1       类型限定 1.1.1          const const是代表一个不能改变值的常量 1.1.2          volatile 代表变量是一个可能被CPU指令之外的地方改变的,编译器就不会针对这个变量去优化目标代码. 1.1.3          register 变量在CPU寄存器里面,而不是在内存里面.但regist是建议型的指令,而不是命令型的指令 #include <stdio.h> int main01() { ;//告诉编译器,不要自作聪明的给我针对这…
1.1       浮点float,double,long double类型 1.1.1          浮点常量,变量 Float在32位系统下是4个字节,double在32位系统下是8个字节 小数的效率很低,避免使用,除非明确的要计算一个小数. 1.1.2          printf输出浮点数 %f,%Lf %f是输出一个double %lf输出一个long double int main() { ; i = / ;//整数是不能保留小数点后面的数的,所以,2.5被截为2 printf…
1.1       char类型 1.1.1          char常量,变量 char c:定义一个char变量 ‘a’,char的常量 Char的本质就是一个整数,一个只有1个字节大小的整数 1.1.2          printf输出char %c意思是输出一个字符,而不是一个整数 1.1.3          不可打印char转义符 \a,警报 \b退格 \n换行 \r回车 \t制表符 \\斜杠 \’单引号 \”双引号 \?问号 1.1.4          char和unsign…
1.1       原码 将最高位做为符号位(0代表正,1代表负),其余各位代表数值本身的绝对值 +7的原码是00000111 -7的原码是10000111 +0的原码是00000000 -0的原码是10000000 1.2       反码 一个数如果值为正,那么反码和原码相同 一个数如果为负,那么符号位为1,其他各位与原码相反 +7的反码00000111 -7的反码11111000 -0的反码11111111 1.3       补码 原码和反码都不利于计算机的运算,如:原码表示的7和-7相…
Android For JNI(二)--C语言中的数据类型,输出,输入函数以及操作内存地址,内存修改器 当我们把Hello World写完之后,我们就可以迈入C的大门了,今天就来讲讲基本的一些数据类型,函数之内的 我们先来看一张传播久远的图片' 一.各种数据类型介绍 整型 整形包括短整型.整形和长整形. 短整形 short a=1; 整形 一般占4个字节(32位),最高位代表符号,0表示正数,1表示负数,取值范围是-2147483648~2147483647,在内存中的存储顺序是地位在前.高位在…
c#中的数据类型简介(数组) 数组定义 可以将数组看成相同数据类型的一组或多组数据,包括一维数组,多维数组和交错数组. 数值数组元素的默认值设置为零,而引用元素的默认值设置为 null. 交错数组是指元素为数组的数组,因此,它的元素是引用类型,初始化为 null. 数组的索引从零开始:具有 n 个元素的数组的索引是从 0 到 n-1. 数据申明 一维数组的几种申明和初始化 type[]  typeName = new type[n]:                              …
转载于http://blog.csdn.net/hinyunsin/article/details/6662851     前言 其实很早就想要写一篇关于指针和数组的文章,毕竟可以认为这是C语言的根本所在.相信,任意一家公司如果想要考察一个人对C语言的理解,指针和数组绝对是必考的一部分. 但是之前一方面之前一直在忙各种事情,一直没有时间静下心来写这些东西,毕竟这确实是一件非常耗费时间和精力的事情:一方面,个人对C语言的掌握和理解也还有限,怕写出来的东西会对大家造成误导.当然,今天写的这些东西也肯…
前言 其实很早就想要写一篇关于指针和数组的文章,毕竟可以认为这是C语言的根本所在.相信,任意一家公司如果想要考察一个人对C语言的理解,指针和数组绝对是必考的一部分. 但是之前一方面之前一直在忙各种事情,一直没有时间静下心来写这些东西,毕竟这确实是一件非常耗费时间和精力的事情:一方面,个人对C语言的掌握和理解也还有限,怕写出来的东西会对大家造成误导.当然,今天写的这些东西也肯定存在各种问题,不严谨甚至错误的地方肯定有,也希望大家来共同探讨,相互改进. 我会慢慢的写完这几章,有想法的童鞋可以和我探讨…
1.函数:当程序很小的时候,我们可以使用一个main函数就能搞定,但当程序变大的时候,就超出了人的大脑承受范围,逻辑不清了,这时候就需要把一个大程序分成许多小的模块来组织,于是就出现了函数概念:  函数是C语言代码的基本组成部分,它是一个小的模块,整个程序由很多个功能独立的模块(函数)组成.这就是程序设计的基本分化方法: (1) 写一个函数的关键: 函数定义:函数的定义是这个函数的实现,函数定义中包含了函数体,函数体中的代码段决定了这个函数的功能: 函数声明:函数声明也称函数原型声明,函数的原型…
go语言圣经-复合数据类型 1.以不同的方式组合基本类型可以构造出来的复合数据类型 2.四种类型——数组.slice.map和结构体 3.数组是由同构的元素组成——每个数组元素都是完全相同的类型——结构体则是由异构的元素组成的 4.slice和map则是动态的数据结构,它们将根据需要动态增长 go语言圣经-数组 1.因为数组的长度是固定的,因此在Go语言中很少直接使用数组 2.数组字面值语法用一组值来初始化数组 3.数组的长度是数组类型的一个组成部分 4.Printf函数的%x副词参数,它用于指…
因为CPU的差异,各系统中的数据类型所占的字节数(bytes)不同,二进制位数(bit)也不同.那么怎样才能知道自己系统的数据类型的字节数,位数呢? 授之以鱼不如授之以渔,大家可以自己从电脑里获取这些信息. 首先我们知道1个字节等于8个位,可以用sizeof()关键字设计以下程序解决: /*获取当前操作系统的字节数(bytes)和位数(bit)*/#include<stdio.h>int main(void){ printf("int:bytes %d;bit %d", s…
基本数据类型所占的字节数其实跟C语言本身没有太大的关系,它取决于编译器的位数,下面这张表说明了不同编译器下基本数据类型的长度: 32位编译器中各基本类型所占字节数: 注:对于32位的编译器,指针变量的大小都是4个字节,也就是32位.原因是32位的寻址空间,也就是每个存储单元的地址都是32位的.指针变量中存储的正好也就是这个32位的地址,所以指针变量的大小是4个字节.同理64位编译器. 64位编译器中各基本类型所占字节数: 对比一下发现,其实没有多大的变化.只不过指针变量的大小和long类型的大小…
1.二维数组的定义和引用 一. 数据类型 数组名[常量表达式1][常量表达式2]; (1)假如有个二维数组array[n][m],则行下标的取值范围0~n-1 (2)列下标的取值范围0~m-1 (3)二维数组的最大下标元素是array[n-1][m-1]; 假如有一个数组array[3][4];则其下标变量为 array[0][0],array[0][1],array[0][2],array[0][3],array[1][0],array[1][1],array[1][2],array[1][3…
指针的特点 他就是内存中的一个地址 指针本身运算 指针所指向的内容是可以操作的 操作系统是如何管理内存的 栈空间 4M~8m的大小 当进入函数的时候会进行压栈数据 堆空间 4g的大小 1g是操作系统 全局变量 内存映射 可以对内存的内容修改修改硬盘的内容 一般在数据库中经常使用 内存的分配与释放 c语言分配内存的方法 // malloc(需要分配的大小): 这里的分配的大小需要对齐的2的指数 void *mem = malloc(size); 释放内存 // 一般分配的内容都是在堆空间中的 //…
1.深入理解 固定内存大小的别名,可以理解为创建变量的模子. PS:变量是存储空间的的别名,在程序中,通过变量来申请并命名存储空间,通过变量名来使用存储空间. 2.分类:基本数据类型构造数据类型 (1)基本数据类型:short.int.long.char.float.double.指针类型 (2) 构造数据类型:结构体.共用体.枚举 3.各个基本数据类型所占的字节数 (1)64位Windows7操作系统下 (2)在32位Redhat下的Gcc编译(虚拟机) (4)在64位的centos下的GCC…
先来个简单的样例 int a[] = {1,2,3}; int arr_len = 0; arr_len = sizeof(a)/sizeof(int); 解释:sizeof() keyword是求出对象所占用的内存空间的大小,so, sizeof(a)是算出整个数组占用的空间的大小. 由于是整数数组.一个整数在32位系统上占用4个字节,不同的系统数值可能不同, 用sizeof(int)能够计算出 一个整数占用的内存空间大小.所以用sizeof(a)/sizeof(int)数组中有几个整数,也即…
01-数组 #include <stdio.h> int main() { // 使用注意 // 都是正确写法 //int ages[5] = {10 , 11, 12, 67, 56}; //int ages[5] = {10, 11}; //int ages[5] = {[3] = 10, [4] = 11}; //int ages[] = {10, 11, 14}; // 错误写法 // int ages[]; // 错误写法 /* 只能在定义数组的同时进行初始化 int ages[5]…
这些数据类型的sizeof具体长度依赖于编译器和操作系统(32-bit or 64-bit) 1: 首先,参见c99标准 标准中没有定义这些数据类型的长度,而是定义了这些数据类型能表达的大小范围的最小极限. C99链接: http://www.open-std.org/JTC1/SC22/WG14/www/docs/n1256.pdf The C++ standard does not specify the size of integral types in bytes, but it spe…
数据类型 字典类型dict 用途:记录多个值,列表是索引对应值,而字典是key对应值,其中key对value有描述性 定义方式:在{ }用逗号分隔开多个元素,每个元素都是key:value形式,其中key是不可变类型,通常是字符串类型,而value是任意类型. 类型转换: d=dict(x=1,y=2,z=3) print(d) print(type(d)) #第一种类型转换 items=[('name','egon'),('age',18),('gender','male')] d={} fo…
一.内存管理 1.python解释器的垃圾回收机制 垃圾:当一个值上没有人绑定任何变量名时(当引用计数为0),该值就是一个垃圾. python解释器运行时会检测值的引用计数,当引用计数=0该值会被清除释放. age=18 #18的引用计数此时为1 x=age #18的引用计数此时为2 del x #18的引用计数此时变回1 del #解除变量与值的引用关系 2.变量值的三个特征 id:反映的是值的内存地址 type:数据的类型 值:本身 age=18 print(id(age)) print(t…
下面的内容节选自由我所执笔的会议记录.对于本文的不足之处,各位可以提出自己的看法. Q1:指针和数组到底是怎么一回事? A:指针和数组有本质的不同.指针就是一个内存地址,在32位系统下,一个指针永远占4个字节:数组是一块连续的内存空间,我们从一个已定义的数组中可以获得数组大小以及这块连续内存空间的起始地址.这个起始地址即数组首元素的地址,更具体的说是数组中首个元素的首地址. 在C语言中,只有一维数组.但是,当一个一维数组的元素是仍然是一维数组时,就形成了所谓的一维数组.如何印证这一点?二维数组在…