随笔分类 -  C语言

摘要:在MDK开发环境中,会遇到 $Sub$$ 和 $Super$$ 的用法,下面的例子将展示这种用法: 打印的结果是: 只有通过实际用例才能明白到底是怎么用的,一例胜千言。 阅读全文
posted @ 2023-09-06 16:25 荒原狼的技术博客 阅读(90) 评论(0) 推荐(0) 编辑
摘要:CrossWorks Dark 阅读全文
posted @ 2022-11-03 00:41 荒原狼的技术博客 阅读(42) 评论(0) 推荐(0) 编辑
摘要:在编译提示窗口的开始提示如下错误: *** Error: cannot write Scatter-file '.\Objects\ISP_308*.sct' 在编译提示窗口的末尾出现如下提示: error - cannot create command input file '.\Objects\ 阅读全文
posted @ 2022-06-24 11:09 荒原狼的技术博客 阅读(404) 评论(0) 推荐(0) 编辑
摘要:用keil MDK 打开某个深层文件夹里的工程时,显示空白页面,看不到任何东西,也没有任何错误提示,这种现象是最糟糕的,很难解决。 Keil 目录可以很好地支持中文,这点儿毫无问题,那究竟是为什么没有反应呢,灵机一动,应该是目录的字符总数太多了,超过了128字节或256字节导致的。 相当多的软件,都 阅读全文
posted @ 2022-06-24 10:56 荒原狼的技术博客 阅读(243) 评论(0) 推荐(0) 编辑
摘要:在一个项目中,使用C语言,首先在一个 A文件中定义了一些全局变量,并赋初值,并在 B文件里引用,并在一个函数中重新赋值。在main函数的起始处中调用该赋值函数,发现并没有被重新赋值。 一般情况下,在中断中使用的全局变量必须要 volatile 修饰,或者一些 IO 口变量必须要 volatile 修 阅读全文
posted @ 2022-05-26 16:28 荒原狼的技术博客 阅读(64) 评论(0) 推荐(0) 编辑
摘要:xdata volatile uint8_t temp = 0; //不报错 volatile xdata uint8_t temp = 0; //报错 xdata 表示把变量声明在外部 RAM 中; volatile 表示不优化改变量,每次写入时,都是真实地写入; 当我们定义一个在外部 RAM中的 阅读全文
posted @ 2022-04-25 21:09 荒原狼的技术博客 阅读(85) 评论(0) 推荐(0) 编辑
摘要:刚才,在windows 10 上,使用 codeblock 开发了一个程序,一运行就闪退,后来定位到是数组太大的缘故,我定义了一个200万字节长度的 char 型数组。 然后把数组字节的大小 200万 改为 100万 程序就正常了。也就是在windows上,定义超过200万字节长度的数组可能会有问题 阅读全文
posted @ 2021-12-28 15:25 荒原狼的技术博客 阅读(114) 评论(0) 推荐(0) 编辑
摘要:玩过 STM32 位MCU的都知道,想把一个长数组存储在大容量的Flash当中,用 const 修饰数组即可。 那么在51单片机中,如何做到这一点呢,经过在某一型号单片机下,工具是 Keil,测试用 const 并不行,而必须采用传统的 code 关键词修饰数组,数组才会被存放到 Flash 当中。 阅读全文
posted @ 2021-08-08 15:21 荒原狼的技术博客 阅读(44) 评论(0) 推荐(0) 编辑
摘要:刚才用keil 5 编译代码,弹出一个错误:error: l6016u: symbol table missing/corrupt in object/library dataconv.lib 找到官网的错误提示,但是毫无办法解决它。后来想到,刚才我用工具把批量把 GB2312 转成了 UTF8 , 阅读全文
posted @ 2021-03-18 20:21 荒原狼的技术博客 阅读(23) 评论(0) 推荐(0) 编辑
摘要:今天调试一个读取文本文件的程序,用的是codeblock C++ GCC,在 Debug模式下能正常运行,Release 下无法正常运行。不正常的表现,就是程序执行了一半,就直接退出了,输出的文本只有大约一半的样子(不是刚好一半)。有空再细细研究。 问题已经找到:在函数内定义了一个长为1000字节的 阅读全文
posted @ 2020-07-09 19:17 荒原狼的技术博客 阅读(49) 评论(0) 推荐(0) 编辑
摘要:/*get the num after the "=" of the string 一行字符串由等号“=”连接前后两部分,本函数提取“=”前面的部分,支持过滤字符串前后的空白字符,字符串中间不能有空格 字符串只能有大小写字母和数字以及下划线组成,不能有其他字符,可以以数字开头。 其实该函数不仅限于“ 阅读全文
posted @ 2020-03-13 01:19 荒原狼的技术博客 阅读(5) 评论(0) 推荐(0) 编辑
摘要:/*get the num after the "=" of the string 一行字符串有等号“=”连接前后两部分,等号后面为十进制数字,本函数是获取等号后面的“数字”字符串,并把它转换为十进制数值返回。 本函数只适用于整形数字转换,不支持浮点型。 */ int64_t getEndIntNu 阅读全文
posted @ 2020-03-13 00:35 荒原狼的技术博客 阅读(46) 评论(0) 推荐(0) 编辑
摘要:问题的解决步骤: 1、右击工程——> C/C++ Build 2、选中Builder Settings 栏目,下面一行有个 Build directory:XXXX,发现这个目录是错误的,手动修改好再编译就没有问题了。 阅读全文
posted @ 2019-08-08 13:02 荒原狼的技术博客 阅读(45) 评论(0) 推荐(0) 编辑
摘要:突然 Nios II无法使用 printf();函数进行格式化输出了,费尽心思地查找问题,最终定位到了一个函数名字上 void write(U16 data);这是我同事编写的函数。只要把该函数名字改一改,比如改成 void Write_2Byte(U16 data);函数printf();立马就能 阅读全文
posted @ 2017-06-06 17:41 荒原狼的技术博客 阅读(16) 评论(0) 推荐(0) 编辑
摘要:最近看程序,发现很多程序员喜欢通过函数操作全局变量,通过函数返回全局变量。 逛了一下论坛,发现通过函数操作全局变量有很多好处。 首先在一个文件中用 static 定义全局变量,如: static int flag;//只能在本文件中使用,避免了别的文件误用本变量 /*获得全局变量的值*/ int g 阅读全文
posted @ 2015-11-13 11:59 荒原狼的技术博客 阅读(30) 评论(0) 推荐(0) 编辑
摘要:C 语言中结构体的赋初值,可以对指定元素赋值,不必按照顺序,前提是通过 "." 来操作,在 c-free 5.0版本下验证通过。 <pre name="code" class="cpp"> #include <stdio.h> typedef struct{ int a; char b; float 阅读全文
posted @ 2015-11-05 13:07 荒原狼的技术博客 阅读(100) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示