C 知识点(1)
来源:互联网 发布:cad软件手机版 编辑:程序博客网 时间:2024/06/05 20:05
零散的知识归纳,包含了double float变量的精确度。putchar函数。数组名的理解。
float 与 double 变量
代码如下
#include <stdio.h>int main(){ float fvar = 0.1234567654321; printf("fvar = %.13f\n",fvar); double dvar = 0.1234567654321; printf("dvar = %.13f\n",dvar); return 0;}
输出结果如下
fvar = 0.1234567686915dvar = 0.1234567654321
float变量会让后面几位的有效数字丢失。
putchar()
向屏幕输出一个字符。输入参数是一个int
型变量。
#include <stdio.h>int main(){ for (int i=0; i<26;i++) { putchar('a'+i); putchar('\n'); } return 0;}
数组名的深刻含义
一维数组
一维数组名,从总体来看,他是一种构造类型,同时他又承担了,访问每个数组元 素的责任。所以数组名, 就有两重性。
#include <stdio.h>int main(){ int array[10]; printf("sizeof(int[10]) = %d sizeof(array) = %d\n",sizeof(int[10]),sizeof(array)); printf("sizeof(int) = %d sizeof(array[0])=%d\n",sizeof(int),sizeof(array[0])); printf("array =%p &array[0] = %p\n",array,&array[0]); printf("array+1 = %p &array[0] +1 = %p\n", array+1, &array[0]+1); return 0;}
运行结果:
sizeof(int[10]) = 40 sizeof(array) = 40sizeof(int) = 4 sizeof(array[0])=4array =0x7fff5fbff790 &array[0] = 0x7fff5fbff790array+1 = 0x7fff5fbff794 &array[0] +1 = 0x7fff5fbff794
从运行结果可以看出:数组名的大小和它所表示的固定大小的数据类型的大小相同(大小是40)。同时每个数组元素的大小和其基本类型一致(4)。另外数组命的地址和数组元素的首地址相同,兼具访问数据的功能。
二维数组
数组名,是数组的唯一标识符。二维数组也是如此,二维数组本质是一嵌套关系, 其本质是一种一维数组,每个一维数组成员又是一个一维数组。
#include <stdio.h>int main(){ int array[3][4]; printf("sizeof(array) = %d sizeof(int[3][4]) = %d\n",sizeof(array),sizeof(int[3][4])); printf("sizeof(int[4]) = %d sizeof(array[0])=%d\n",sizeof(int[4]),sizeof(array[0])); printf("array = %p &array[0] = %p\n",array,&array[0]); printf("array+1 = %p &array[0]+1 = %p\n",array+1,&array[0]+1); return 0;}
运行结果:
sizeof(array) = 48 sizeof(int[3][4]) = 48sizeof(int[4]) = 16 sizeof(array[0])=16array = 0x7fff5fbff780 &array[0] = 0x7fff5fbff780array+1 = 0x7fff5fbff790 &array[0]+1 = 0x7fff5fbff790
从以上运行结果可以看到,二维数组的组成元素是一维数组,大小是16。和4个int类型的大小一致。同时二维数组的变量名和数组第一个元素的地址相同。
阅读全文
0 0
- C/C++知识点1
- c语言知识点-1
- C 知识点(1)
- C 基础知识点讲解1
- c语言易错小知识点1
- C语言知识点梳理(1)
- 【c】c语言语法知识点总结 1
- c知识点
- C 知识点
- 【项目文档】【知识点】C深入学习知识点checklistV1.1正式版
- C重点知识点总结(1)
- C/C++知识点整理(1)
- object-c常见的知识点-1
- c语言基本常识1(知识点)
- C语言小知识点 汇总1
- c语言程序设计1-2章的知识点
- C语言知识点整合(1)
- C++_set容器_知识点整理1
- 冒泡排序
- Vue之基础事件
- 禁用Ubuntu 15.04登录界面显示客人会话(简单-实用)
- Makefile构建工程设计——Makefile函数调用
- 浅谈Thrift内部实现原理
- C 知识点(1)
- 选择排序
- leetcode 134. Gas Station
- 三个案例带你看懂LayoutInflater中inflate方法两个参数和三个参数的区别
- Spring 学习(二) Bean
- C 知识点(2)
- 深入理解overlayfs(二):使用与原理分析
- Mybatis foreach异常Parameter '__frch_item_0' not found. Available parameters are [list]
- C 知识点(3)