linux C编程一站式学习
https://docs.huihoo.com/c/linux-c-programming/
你回到了你的家
这个作者很懒,什么都没留下…
展开
-
分支语句介绍
二、if/else语句if语句还可以带一个else字句(clause),例如:if (x % 2 == 0) printf("x is even.\n");else printf("x is odd.\n");原创 2021-07-23 18:44:07 · 74 阅读 · 0 评论 -
七、C结构体详解
一、复合类型与结构体在编程语言中,最基本的、不可再分的数据类型称为基本类型(Primitive Type),例如整型、浮点型;根据语法规则由基本类型组合而成的类型称为复合类型(Compound Type),例如字符串是由很多字符组成的。有些场合下要把复合类型当作一个整体来用,而另外一些场合下需要分解组成这个复合类型的各种基本类型,复合类型的这种两面性为数据抽象(Data Abstraction)奠定了基础。Structure and Interpretation of Computer Programs.原创 2021-07-23 18:16:26 · 196 阅读 · 0 评论 -
三、C语言简单函数
二、自定义函数我们不仅可以调用C标准库提供的函数,也可以定义自己的函数,事实上我们已经这么做了:我们定义了main函数。例如:int main(void){ int hour = 11; int minute = 59; printf("%d and %d hours\n", hour, minute / 60); main函数的特殊之处在于执行程序时它自动被操作系统调用,操作系统就认准了main这个名字,除了名字特殊之外,main函数和别的函数没有区别。我们对照着main函数的定义来看语原创 2021-07-23 17:59:56 · 119 阅读 · 0 评论 -
汇编与C之间的关系
二、main函数和启动例程原创 2021-07-23 17:47:02 · 137 阅读 · 0 评论 -
十八、x86汇编基础
一、最简单的汇编程序#PURPOSE: Simple program that exits and returns a# status code back to the Linux kernel##INPUT: none##OUTPUT: returns a status code. This can be viewed# by typing## echo $?## after running the program##VARIABLES:# %eax原创 2021-07-23 17:45:48 · 438 阅读 · 0 评论 -
二十、链接详解
一、多目标文件的链接现在我们将例12.1 用堆栈实现倒序打印拆成两个程序文件,stack.c实现堆栈,而main.c使用堆栈://stack.cchar stack[512];int top=-1;void push(char c){ stack[++top]=c;}char pop(void){ return stack[top--];}int is_empty(void){ return top==-1;}这里堆栈做了一些细微的修改,这里的top总是指向堆栈元素,所原创 2021-07-23 17:30:49 · 142 阅读 · 0 评论 -
排序与查找
二、插入排序排序算法如下://例 11.1 插入排序#include<stdio.h>#define LEN 5int a[LEN]={10,5,2,4,7};void insertion_sort(void){ int i,j,key; for(j=1;j<len;j++){ key=a[j]; i=j-1; while(i>=0&&a[i]>key){ a[i+1]=a[i]; i--; } a[i+1]=原创 2021-07-23 17:12:44 · 79 阅读 · 0 评论 -
栈与队列介绍
二、堆栈堆栈是一组元素的集合,类似于数组,不同之处在于,数组可以按下标随机访问,这次访问a[5]下次可以访问a[1],但是堆栈的访问规则被限制为Push和Pop两种操作,Push(入栈或压栈)向栈顶添加元素,Pop(出栈或弹出)则取出当前栈顶的元素,也就是说,只能访问栈顶元素而不能访问栈中其他元素。如果所有元素的类型相同,堆栈的存储也可以用数组来实现,访问操作可以通过函数接口提供,观察如下的示例程序://例12.1 用堆栈实现倒序打印#include<stdio.h>char stac原创 2021-07-23 11:58:24 · 94 阅读 · 0 评论