上一页 1 ··· 15 16 17 18 19
摘要: 我们现在已经可以写好文法了,下一步我们打算开始正式创建工程了 在工程目录下,我们创建如下文件夹 文件夹下我们将放头文件 是内存管理模块,检测内存泄漏 文件夹主要是放源文件 memory内存管理模块可以参考我另一个随笔 https://www.cnblogs.com/stdpain/p/1048440 阅读全文
posted @ 2019-03-14 10:57 stdpain 阅读(484) 评论(0) 推荐(0)
摘要: 我们先来想一下语法 一般脚本语言不需要定义类型直接在赋值的时候确定 1. 我们主要考虑一下变量的类型 一般来讲,我们使用这三种类型,整形,浮点型,字符串型 不过我们以后还可能使用原生类型等 2. 变量的基本运算和其他语言基本相同 3. 函数定义 我们可以模仿一下js的函数定义方式,不过变量使用的时候 阅读全文
posted @ 2019-03-13 16:31 stdpain 阅读(678) 评论(0) 推荐(0)
摘要: 使用bison和yacc制作脚本语言(1) 环境: | 环境 | windows 10 Cygwin64 | | | | | 语言 | C | | 工具 | mingw bison flex | 主要是使用bison和flex这两个软件,编译器无所谓VC也可以 先安装Cygwin,这个是一个类似Li 阅读全文
posted @ 2019-03-13 14:33 stdpain 阅读(643) 评论(0) 推荐(0)
摘要: C Mingw gcc printf 刷新缓冲行 参考:https://stackoverflow.com/questions/13035075/printf not printing on console 最近在用Mingw的时候遇到段错误的时候printf没有输出,加 也不行只能一点一点用gdb 阅读全文
posted @ 2019-03-13 14:04 stdpain 阅读(386) 评论(0) 推荐(0)
摘要: GDB简单使用 通过gdb启动进程 gdb $bin gdb中装载 file $bin 开始执行 (r) run 给main函数传递的值 run $arg1 $arg2 显示源代码 list list $function_name list $n break 打断点 break $line #当前文 阅读全文
posted @ 2019-03-11 12:50 stdpain 阅读(179) 评论(0) 推荐(0)
摘要: C 二维数组,以及自定义二维数组 我们通常情况下是这样定义一个二维数组的: 我们分别查看一下 都是一样的值吧 我们可以这么理解: a是一个数组的数组 a是数组首元素的地址,a的首元素是一个15个元素的数组,a[0]和a[0]的首元素( )的地址是同一个地址 所以有人可能会想int pa 是不是 跟a 阅读全文
posted @ 2019-03-08 12:00 stdpain 阅读(1997) 评论(0) 推荐(0)
摘要: 数组与指针 指针也是一种变量,代表着指向一个地址 指针变量里面存的值是一个数字,数字是几就代表指向内存的哪里 指针的赋值 一般情况下指针会用一个有意义的地址来赋值(&代表取地址) 上面的数组a可以赋值给pa是因为数组名字就代表了数组的首地址 解引用 解引用就是代表获得这个地址指向那块内存的值,这个值 阅读全文
posted @ 2019-03-08 09:09 stdpain 阅读(2495) 评论(0) 推荐(0)
摘要: C 内存管理模块的编写 C语言手动管理内存很困难,有时候很难发现内存泄漏,这两天看了一下里面有写了一个简单的内存管理模块,发现挺精巧,可以有效检测内存泄漏 原理很简单,就是把C的malloc函数分配的内存用一个链表记录起来,最后查看这个链表是否还有节点就可以判断是否有内存泄漏了 首先我们先看一下这个 阅读全文
posted @ 2019-03-06 17:01 stdpain 阅读(2601) 评论(0) 推荐(0)
上一页 1 ··· 15 16 17 18 19