
C
C语言一些有意思的事
倾尽浮生只为卿
仙人抚我顶,结发授长生
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C语言中的extern关键字
首先要确认的是,什么是变量的声明,什么是变量的定义,声明可以多次,定义只能一次。int n = 100; //声明,也是定义extern int n;//声明,不是定义例子:a.c#include <stdio.h>int n = 100;void layout(){ printf("a.c: the n is %d\n", n);}a.h#ifndef __A_H#define __A_Hvoid layout();#endif原创 2020-05-20 10:31:32 · 232 阅读 · 0 评论 -
什么是回调函数
回调函数本质上就是函数指针的一种应用,如果不清楚什么是函数指针的请参考以下博客:https://blog.youkuaiyun.com/chidaoqi1607/article/details/106214763 回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。简单的讲,一般写...转载 2020-05-19 15:31:07 · 1268 阅读 · 0 评论 -
什么是函数指针,函数名又是什么
一、通常的函数调用 一个通常的函数调用的例子://自行包含头文件void MyFun(int x);//此处的申明也可写成:void MyFun( int );int main(int argc, char* argv[]){MyFun(10);//这里是调用MyFun(10);函数return 0;}void MyFun(int x)//这里定义一个MyFun函数{printf(“%d\n”,x);} 这个MyFun函数是一个...转载 2020-05-19 15:04:58 · 485 阅读 · 0 评论 -
C语言中typedef的理解
C语言语法简单,但内涵却博大精深;如果在学习时只是止步于表面,那么往往后期会遇到很多困 难。typedef是C语言中一个很好用的工具,大量存在于已有代码中,特别值得一提的是:C++标准库实现中更是对typedef有着大量的使用。但很 多初学者对其的理解仅局限于:typedef用来定义一个已有类型的"别名(alias)"。正是因为有了这样的理解,才有了后来初学者在typedef int myint和typedef myint int之间的犹豫不决。很多国内大学的C语言课之授课老师也都是如是说的,或者老师讲的不转载 2020-05-18 17:38:03 · 490 阅读 · 0 评论 -
对于转义字符"\"的理解
一、所有的转义字符和所对应的意义:二、举例说明1.使用带""的字符串时: char str[] = "\"hello\"";输出:"hello"2.使用带\的字符串时: char str[] = "hello\\;";输出:hello\;原创 2020-05-13 10:03:06 · 629 阅读 · 0 评论 -
使用valgrind检测c程序内存泄漏,数组越界,非法指针,重复free等问题
一、valgrind的安装(Ubuntu)sudo apt install valgrind //安装 valgrind --version //安装完检查版本信息确认二、检测内存泄漏例子:mem.c#include <stdlib.h>#include <stdio.h>int main(){ char *ptr; ptr = (char *)malloc(10); return 0;}原创 2020-05-11 13:59:19 · 2042 阅读 · 0 评论 -
C语言中的可变参数函数 三个点“…”
第一篇C语言编程中有时会遇到一些参数个数可变的函数,例如printf()函数,其函数原型为:int printf( const char* format, ...);它除了有一个参数format固定以外,后面跟的参数的个数和类型是可变的(用三个点“…”做参数占位符),实际调用时可以有以下的形式:printf("%d",i);printf("%s",s);printf("the number is %d ,string is:%s", i, s);一个简单的可变参数的C函数 先看...转载 2020-05-09 14:36:33 · 350 阅读 · 0 评论