![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C
jasmineal
If you dont build your dream someone will hire you to build theirs.
展开
-
二维数组名和二级指针
一直以为二维数组名即二级指针,如int a[2][3]与int **p,a与p是可以等价的。直到今天才发现,这个认识是错误的.如下示例:图一: 编译程序,报如下错:图二: 数组指针不能与二级指针转换. 强制将其转换如下:图三: 运行出错.分析下原因:现在二级转载 2013-03-19 13:47:11 · 1189 阅读 · 0 评论 -
strtok_r具体实现
strtok_r源码 /* Parse S into tokens separated by characters in DELIM. If S is NULL, the saved pointer in SAVE_PTR is used as the next starting point. For example:原创 2013-05-27 19:10:07 · 1480 阅读 · 0 评论 -
举例分析Linux动态库和静态库
函数库分为静态库和动态库两种。创建Linux静态库和Linux动态库和使用它们在这里将以举例的形式详述一下。静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。第1步:编辑得到举例的程序--hello.h、hello.c和main.c;hello.h(见程序1)为该函数转载 2013-05-02 16:22:26 · 404 阅读 · 0 评论 -
详细分析Linux动态库的使用方式
前面有一篇文章介绍了Linux动态库的自身的特点,如实现进程之间的资源共享,将一些程序升级变得简单,甚至可以真正坐到链接载入完全由程序员在程序代码中控制,和如何创建Linux动态库。动态链接库的使用使用动态链接库,首先需要在编译期间让编译器检查一些语法与定义。这与静态库的实用基本一样,用的是 -Lpath 和 -lxxx 标签。如:gcc file1.o file2.o -Lpat转载 2013-05-02 16:24:55 · 563 阅读 · 0 评论 -
随机数和伪随机数
伪随机数:真正意义上的随机数(或者随机事件)在某次产生过程中是按照实验过程中表现的分布概率随机产生的,其结果是不可预测的,是不可见的。而计算机中的随机函数是按照一定算法模拟产生的,其结果是确定的,是可见的。我们可以这样认为这个可预见的结果其出现的概率是100%。所以用计算机随机函数所产生的“随机数”并不随机。随机数:c语言通过得到伪随机数来实现rand()void srand(un原创 2013-04-09 17:51:23 · 1135 阅读 · 0 评论 -
c语言文件操作函数
1.fopen() fopen的原型是:FILE *fopen(const char *filename,const char *mode),fopen实现三个功能:为使用而打开一个流,把一个文件和此流相连接,给此流返回一个FILR指针。 参数filename指向要打开的文件名,mode表示打开状态的字符串,其取值如下: 字符串 含义 "r" 以只读方式原创 2013-03-22 14:00:01 · 371 阅读 · 0 评论 -
C语言:#include <>与#include ””的区别
"#include ” 用于标准库文件或系统提供的头文件,到保存系统标准头文件的位置查找头文件。而"#include "userdefined.h"用于用户自定义的头文件,先从当前目录查找是否有指定名称的头文件,若当前目录未找到该头文件,再从标准文件目录中查找。这两种方式有他们的本质区别。在c语言程序设计中包含的头文件可分为系统标准头文件和用户工程中自定义的头文件,对于系统标准库头文件可转载 2013-04-03 15:04:25 · 578 阅读 · 0 评论 -
指针数组和数组指针的区别
这两个名字不同当然所代表的意思也就不同。我刚开始看到这就吓到了,主要是中文太博大精深了,整这样的简称太专业了,把人都绕晕了。从英文解释或中文全称看就比较容易理解。指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针数组指针:a pointer to an array,即指向数组的指针还要注意的是他们用法的区别,下面举例说明。int* a[4]原创 2013-03-19 11:14:08 · 329 阅读 · 0 评论 -
二级指针与二维数组--2
指针是C语言的一大特色,它就像一把双刃剑:使用得当能够给程序带来极大的灵活性和高效性;反之,程序就会变得难以调试,漏洞百出!众所周知,指针实质就是地址!一个变量的地址即称为此变量的“指针”。如果有这样一种变量:它的存储单元里存放的是其它变量的地址!我们就称之为“指针变量”。(请注意两者之间的区别:两个完全不同的概念!)我们都知道,数组名和函数名就是它们的入口地址。同理,一个变量名其实也是此转载 2013-03-19 13:49:38 · 738 阅读 · 0 评论 -
c语言const 变量使用注意点
const修饰的变量被许多人错误的认为是常量,但是const所修饰的变量应该是只读变量,所以const修饰的变量它还是一个变量。在switch case中的一个case分支中如果用const变量来表达,则会报出错误:error: case label does not reduce to an integer constantconst int b=2;int a = 1;switch原创 2013-06-04 17:56:43 · 1953 阅读 · 1 评论