c语言
文章平均质量分 68
-yanhui-
这个作者很懒,什么都没留下…
展开
-
c语言main函数的命令行参数
c语言环境中,可以在程序开始执行时将命令行参数传递给程序。main函数有两个参数。argc:表示运行程序时命令行中参数的数目。argv:参数向量,是一个指向字符串数组的指针,其中每个字符串对应一个参数。arg[0]的值是启动程序的程序名(c语言的规定,由此可知,argc的值至少是1),当argc的值为1时,说明程序名后面没有命令行参数。ANSI标准要求argv[argc]的值必须为一空...原创 2018-03-15 11:02:42 · 1524 阅读 · 0 评论 -
散列
散列:把任意长度的输入,通过散列算法,变换成固定长度的输出,该输出就是散列值。 每个关键字被映射到0—TableSize-1这个范围中的某个数,并且被放到适当的单元中,这个映射就叫做散列函数。散列最关键的是要处理两个关键字通过散列函数映射到同一个位置时(这种情况被称作冲突),应该做什么以及如何确定散列表的大小。散列函数通常关键字是字符串时,散列函数要仔细的选择。下面是一个简单...原创 2018-04-30 19:33:19 · 559 阅读 · 0 评论 -
C语言——运算符优先级
表格 运算符 连接规则 () [] -> . 从左往右 ! ~ ++ + - 原创 2018-04-05 23:59:42 · 464 阅读 · 0 评论 -
C语言与UNIX系统
       UNIX操作系统通过一系列的系统调度提供服务,这些系统调用实际上操作系统内的函数,他们可以被用户程序调用。在UNIX操作系统中,所有的外围设备(包括键盘和鼠标)都被看作是文件系统中的文件,因此,所有的输入/输出都要通过读文件或者写文件完成。inode号(UNIX索引节—index node)Unix原创 2018-03-23 14:07:27 · 1789 阅读 · 0 评论 -
C语言——操作系统内存分配过程
内存分配机制的发展过程:第一阶段——程序直接操作物理内存。 某台计算机总的内存大小是128M,现在同时运行两个程序A和B,A需占用内存10M,B需占用内存100。计算机在给程序分配内存时会采取这样的方法:先将内存中的前10M分配给程序A,接着再从内存中剩余的118M中划分出100M分配给程序B1.进程地址空间不隔离。 进程之间可以互相修改内存,导致不安全,可能会出现一个进...原创 2018-03-27 13:49:08 · 9990 阅读 · 0 评论 -
C语言——声明总结
int *f();//返回指向int指针的函数。.int (*pf)(); //指向返回int的函数的指针。pf is pointer to function returning intC语言的声明中分为”类型”和”标识符”,把标识符取出后,剩下就是类型名(基本类型和派生类型,派生类型是由结构体、联合体、数组、函数、指针这些类型本身和有;之所以被叫做派生类是因为他们可以无限的派生出很多派生...原创 2018-04-02 11:08:01 · 411 阅读 · 0 评论 -
C语言——类型总结
C语言数据类型分为基本类型和派生类型,派生类型是指从某些类型派生出来的类型。基本数据类型如下:charintfloatdouble在基本数据类型前可以加一些限定符:short和long也是两个限定符。short int sh;long int counter;以上的类型声明中,关键字int可以省略。以下为写法都是相同的情况。 推荐使用...原创 2018-03-31 17:50:17 · 1002 阅读 · 0 评论 -
C语言——结构
结构结构是一个或多个变量的集合,这些变量可能为不同的类型,为了处理的方便而将这些变量组织在一个名字之下。结构的声明方式://声明一个结构struct point{ int x; int y;};//声明三个结构,类似与int a,b,cstruct {int x;int y;} a,b,c;//给结构赋初值struct point m...原创 2018-03-20 11:04:07 · 979 阅读 · 0 评论 -
指针与数组(笔记)
指针指针是一种保存变量地址的变量。指针是能够存放一个地址的一组存储单元(通常是两个或者4个)。 通常的机器都有一些列连续编号或编址的存储单元,这些单元可以单个操纵,也可以以连续成组的方式操纵。char占一个字节,short占两个连续字节。一元运算符&用来取一个对象的地址。地址运算符&只能应用于内存中的对象,即变量与数组元素;不能作用于表达式、常量或registe...原创 2018-03-12 13:05:19 · 517 阅读 · 0 评论 -
c语言在内存中的分布
参考文章https://www.cnblogs.com/yif1991/p/5049638.html存储时结构首先写一个c语言版的Hello World#include <stdio.h>void main(){ printf("hello,world\n");}将该段程序写在一个hello.c的文件中。打开终端,编译hello.c生成一个a.ou...原创 2018-03-12 13:05:05 · 6796 阅读 · 2 评论 -
堆(优先队列)
堆是一种至少允许下面两种操作的数据结构Insert(插入)DeleteMin/DeleteMax(删除最小/大者),它的工作是找出、返回和删除优先队列中的最小/大元素。实现堆的几种方式:第一种:定义一个单链表在表头执行插入操作,删除最小值时遍历该表找出最小的元素并删除。(插入省时间,删除费时间)第二种:始终让表保持排序状态。(插入费时间,删除省时间)第三种:二叉堆。插入使用...原创 2018-05-10 23:43:02 · 240 阅读 · 0 评论