linux-C编程
文章平均质量分 77
遍地流金
这个作者很懒,什么都没留下…
展开
-
linux C编程(四)int占用字节数/大小端模式/数据类型自动转换/结构体内存占用
数据类型占用字节数首先强调,不同数据类型的内存占用大小不固定,与编译器有关,与CPU的位数和操作系统的位数无关。但编译器仍然受CPU的字长影响。具体常用的标准如下: type 32字长 64字长 char 8 8 short 16 16 int 32 32 long 64 64 pointer 32 64对于16位或者8位的单片原创 2016-08-25 17:54:08 · 2570 阅读 · 0 评论 -
linux C编程(二)数据与函数的存储类型和内存管理
变量的存储类型变量的存储类型主要定义了变量的作用域,连接属性,存储属性。存储属性作用域表示该变量可以被使用的区域。分为代码块作用域,函数原型作用域,文件作用域。 如对于下面的一个main.c而言,var_ file作用域为整个文件main.c,var_ function作用域为main函数,var _code _block作用域仅为for循环的{}中。作用域不重合的两个变量可以重名。#includ原创 2016-08-24 13:58:50 · 666 阅读 · 0 评论 -
linux C编程(三)ANSI C中的类型限定词(const/volatile/restrict)
由第二节我们知道,一个变量有两种属性来描述,一种为数据类型(如int,char等),一种为存储属性(包括作用域,链接属性,生存周期 属性,由static和变量声明的地方决定)。C90标准增加了两个属性:不变性和易变性,C99标准增加了1个属性:restrict属性,用于编译器优化。 另外,C99中规定类型限定符是幂等的,也即意味着可以在一个声明中不止一次的使用同意限定词,多余的将被忽略如下面两种使原创 2016-08-24 22:40:12 · 934 阅读 · 0 评论 -
linux C编程(一)gcc的用法
linux下编程离不开gcc,因此本文现重点讲述gcc的用法。gcc,全称:GNU Compile Collection,是一组编译器集合,可以编译c,c++,object-c等1.g++与gcc的区别g++等效于 gcc -xc++ -lstdc++ -share-libgcc其中-x选项是指定编译器的编译语言,由上述等价关系可知,gcc对于不同的文件,2.原创 2016-08-03 16:36:15 · 1162 阅读 · 0 评论 -
linux C编程(五)函数指针与函数调用
函数指针函数指针,首先是一个指针,只不过该指针指向的是函数,而不是变量。#include <stdio.h>int max(int x,int y){ return (x>y)?x:y;}int main(){ int i = 0; int (*f)(int x,int y) = max;//定义函数指针并初始化 //f = max;f = &max;也可使用这两种方式进行初原创 2016-08-25 22:45:50 · 4343 阅读 · 0 评论