C语言
mozha_csdn
这个作者很懒,什么都没留下…
展开
-
C/C++进阶之进程空间(二)
进程空间 首先认识进程和程序的区别 1、程序:源文件经过编译,生成可执行文件,一般window下是*.exe文件,linux下是a.out。程序是静态的。程序包含3个区域,text,inial data, uinial data。 2、进程:被操作系统加载到内存至运行结束的过程。进程是动态的。进程包含5个区域,text,inial data, uinial data,heap,...原创 2018-03-05 21:58:38 · 1292 阅读 · 0 评论 -
C语言进阶——字符串
C语言中的字符串 1、字符串:被引号引起的一串字符,就是字符串,系统会自动在这段字符末尾加上结束标志‘\0’ 2、C语言中并没有定义字符串变量,所以C语言中字符串是以常量存在,存储在进程空间的data区的ro区域 3、编译时候处理成指向常量字符串的指针,不能改变字符串的内容,不能改变指向const char * const //字符串的指针类型4、如果要改变字符串内容,则要把它放...原创 2018-03-18 09:58:00 · 593 阅读 · 0 评论 -
C语言进阶——基于数组的查找
二分查找——迭代方式 1、前提:数组元素有序#include<stdio.h>#include<stdlib.h>#include<time.h>#define len 10typedef enum{ EROOR,SUCCESS}STATUS; //迭代二分查找 int search(int *p,int low,int high,...原创 2018-03-15 23:41:17 · 375 阅读 · 0 评论 -
C语言进阶——基于数组的排序
普通选择排序 1、实现原理和思想(升序): 1)在未排序的数组中,选择首元素与其后元素进行比较,若其后元素比首元素大,则两元素交换,直至比较到最后一个元素,这是第一轮比较,得到首元素有序。 2)接下来从第2个,第3个元素…重复1)的步骤,直至剩下最后一个元素,则最后一个元素也是有序,是本组元素的最大值。#include<stdio.h>#include<stdli...原创 2018-03-15 21:43:20 · 429 阅读 · 0 评论 -
C语言进阶——函数指针
函数名称即是指针 1、声明函数指针注意,要声明的函数的返回值 ,参数#include<stdio.h>#include<stdlib.h>#include<string.h>void printfX(){ printf("xxxxxxxx\n"); printf("xxxxxxxx\n"); printf("xxxxxx...原创 2018-03-15 16:34:23 · 587 阅读 · 0 评论 -
C语言进阶——把文件内容读取到内存
编程思想 1、利用二级指针构建二维空间,这样做目的是为了节约内存空间。 2、分析图 下图是文件内容的抽象形式,现在要把蓝色部分的文字读取到内存 下图右边蓝色部分表示从文件读取出来的一行行内容,再过来绿色框的一级指针指向这些内容的地址,每个指针指向一行,然后再使用一个二级指针来指向这个一级指针数组 实现代码//把文件读到内存#include<stdio.h>...原创 2018-03-14 22:35:18 · 10052 阅读 · 3 评论 -
C语言进阶——const
const 1、const可以取代宏,const有类型,宏没有类型 2、const修饰的变量称为常变量 3、合理使用const修饰变量,可以增强程序的健壮性。const的3种修饰 const的位置和int的位置无关 1、修饰普通变量int main(void){ const int a = 1; a = 2; //编译不过 printf("%...原创 2018-03-14 22:23:52 · 266 阅读 · 0 评论 -
C语言进阶-ifndef的用法
1、ifndef是 if not define 的缩写 2、用法#ifndef x //先测试x是否被宏定义过#define x程序段1 //如果x没有被宏定义过,定义x,并编译程序段 1#else程序段2 //如果x已经定义过了则编译程序段2的语句,“忽视”程序段 1。#endif//终止if3、作用 条件指示符#ifndef 的最主要目的是防止头文件的重复包含和编译。...原创 2018-03-08 15:30:25 · 6528 阅读 · 0 评论 -
C语言进阶之数组
一维数组 相关概念 1、数组的特点:存储相同的数据类型,内存空间连续,数组也是一种数据类型。 2、数组三要素:一个数组如何确定需要3个属性,起始地址,步长,范围。 数组的声明 int a [] 数组的初始化 int a [10] = {1,2,3}//部分初始化 int a[10] = {0};//清零 数组名称做为整体使用的情况 ...原创 2018-03-07 09:18:49 · 503 阅读 · 0 评论 -
c语言进阶--二级指针
指针 1、指针是一种数据类型,在32位机下是4个字节,64位机子下是8个字节 2、二级指针是指向一级指针的指针,也就是二级指针的存储内容是一级指针的地址 3、一级指针的声明:int * p = NULL;二级指针的声明:int **q = &p;4、定义指针的数据类型表示指针的寻址能力,指针只会记录数据类型的低地址。 比如,int数据类型有4个字节,那么p的...原创 2018-03-13 21:48:10 · 1034 阅读 · 1 评论