随笔分类 -  C语言学习

摘要:#include "stdio.h" #include "windows.h" int main() { char sText[20] = { "多字节字符串!OK!" }; DWORD dwNum = MultiByteToWideChar(CP_ACP, 0, sText, -1, NULL, 0); printf("dwNum = %d", dwNum); for (int i = 0; i 阅读全文
posted @ 2019-09-09 20:40 NULL_ROOT 阅读(377) 评论(0) 推荐(0)
摘要:转载详情,请参考: https://blog.csdn.net/qq_15079039/article/details/80917734 这里对其中一篇进行展示: C语言和设计模式(继承、封装、多态) #include<stdio.h> //多态 typedef struct Human { int 阅读全文
posted @ 2019-05-20 10:45 NULL_ROOT 阅读(294) 评论(0) 推荐(0)
摘要:typedef struct Object { int a; int ID; int b; }Object; Object newObject() { Object obj; printf("newObject()...\n"); obj.a = 1024; obj.ID = -1; obj.b = 2; return ob... 阅读全文
posted @ 2019-04-16 16:53 NULL_ROOT 阅读(140) 评论(0) 推荐(0)
摘要:strcpy_s 和 strcat_s的用法 阅读全文
posted @ 2019-03-15 11:16 NULL_ROOT 阅读(716) 评论(0) 推荐(0)
摘要:使用C++编译器按C标准来编译C语言代码 阅读全文
posted @ 2019-03-15 11:07 NULL_ROOT 阅读(838) 评论(0) 推荐(0)
摘要:int getStrLength(char* str) { int i = 0; while (str[i] != '\0') { i++; } return i; } 阅读全文
posted @ 2019-03-14 20:24 NULL_ROOT 阅读(1527) 评论(0) 推荐(0)
摘要:*C语言中数组名和&数组名的区别* b:19921780 &b:19921780 b+1:19921784 &b+1:19921820 结论:数组名b表示的是“数组首个元素的地址,而首个元素是int类型”,&b指的是int b[10]这个数组的地址,而这个数组的长度是40个字节,所以&b+1比b大了 阅读全文
posted @ 2019-03-13 21:33 NULL_ROOT 阅读(3692) 评论(0) 推荐(1)
摘要:有时候我们希望定义这样一种变量,它的值不能被改变,在整个作用域中都保持固定。例如,用一个变量来表示班级的最大人数,或者表示缓冲区的大小。为了满足这一要求,可以使用const关键字对变量加以限定: const int MaxNum = 100; //班级的最大人数 const int MaxNum = 阅读全文
posted @ 2019-03-13 08:38 NULL_ROOT 阅读(12191) 评论(0) 推荐(0)
摘要:*C中的staic关键字* 心得1: 被static关键字修饰的变量不可以被外部的.c源文件访问。我测试过,还不知道官不管方。 阅读全文
posted @ 2019-03-03 20:01 NULL_ROOT 阅读(332) 评论(0) 推荐(0)
摘要:C语言知识整理(3):内存管理(详细版) 在计算机系统,特别是嵌入式系统中,内存资源是非常有限的。尤其对于移动端开发者来说,硬件资源的限制使得其在程序设计中首要考虑的问题就是如何有效地管理内存资源。本文是作者在学习C语言内存管理的过程中做的一个总结,如有不妥之处,望读者不吝指正。 一、几个基本概念 阅读全文
posted @ 2019-03-03 19:52 NULL_ROOT 阅读(183) 评论(0) 推荐(0)
摘要:*C语言结构体变量作为函数形参* | 例子1 阅读全文
posted @ 2019-03-02 11:00 NULL_ROOT 阅读(730) 评论(0) 推荐(0)
摘要:*C语言中的返回值* | 例子1 错误代码演示: 说明:方法内部的局部变量会在方法被调用之后,被销毁,即:他的存储空间会被释放。所以像这个例子中的做法不会报错但是不建议,因为x的地址到了方法外面就不好使了。 那么如果程序中我们就需要这样做的时候因该怎么办呢? 方法是将x定义为静态的,即:static 阅读全文
posted @ 2019-03-01 11:03 NULL_ROOT 阅读(1494) 评论(0) 推荐(0)
摘要:main.c中 test.c test.h 阅读全文
posted @ 2019-02-27 17:08 NULL_ROOT 阅读(257) 评论(0) 推荐(0)
摘要:int Motor_ALL_Num = 3; int i_loop; while (true) { int Work_OK_flag = 0;//这个值随时回变 //Work_OK_flag值改变.... for (i_loop = 1; i_loop > (16 - Motor_ALL_Num)) { //判断所有轴的这个Work... 阅读全文
posted @ 2019-02-25 10:28 NULL_ROOT 阅读(160) 评论(0) 推荐(0)
摘要:| 下面看一下我自己的实现方法: 文件 User.h 文件 User.c | 例子2 与上一个相似 User.h User.c | 例子3 上一个例子的升级版 User.h User.c | 例子4 增加了释放对象的方法 User.h: User.c main.c 中进行测试 | 升级了上一个例子中 阅读全文
posted @ 2019-02-24 17:07 NULL_ROOT 阅读(1000) 评论(0) 推荐(0)
摘要:问题1:C语言中能否在头文件中定义变量? 可以的,但是不推荐在头文件中定义变量。 因为很多.c文件都可以包含.h文件,也就是说这个变量会在很多.c文件中存在一个副本。假如这是一个多文件项目,在连接阶段,连接器就会抱怨存在多个相同变量名的全局变量,导致连接出错。 所以.h文件中一般只能包含`全局变量` 阅读全文
posted @ 2019-02-22 09:20 NULL_ROOT 阅读(745) 评论(0) 推荐(0)
摘要:结论:当指针变量作为参数进行传参操作时,方法内部对变量进行操作,同时 也会影响传入的指针变量的值,因为他们指向的是同一块存储空间的数据 可参考图: 阅读全文
posted @ 2019-02-16 13:12 NULL_ROOT 阅读(2447) 评论(0) 推荐(0)
摘要:1. 函数注释: 1 /**2 ******************************************************************************3 * @file stm32f4x7_eth.h4 * @author MCD Application Tea 阅读全文
posted @ 2019-02-14 08:58 NULL_ROOT 阅读(633) 评论(0) 推荐(0)
摘要:更新 c语言宏定义#define的理解与资料整理 1. 利用define来定义 数值宏常量 #define 宏定义是个演技非常高超的替身演员,但也会经常耍大牌的,所以我们用它要慎之又慎。它可以出现在代码的任何地方,从本行宏定义开始,以后的代码就就都认识这个宏了;也可以把任何东西定义成宏。因为编译器会 阅读全文
posted @ 2019-02-12 14:57 NULL_ROOT 阅读(1620) 评论(0) 推荐(0)
摘要:C语言的布尔类型 在C语言标准(C89)没有定义布尔类型,所以C语言判断真假时以0为假,非0为真。所以我们通常使用逻辑变量的做法: //定义一个int类型变量,当变量值为0时表示false,值为1时表示trueint flag;flag = 0;//......flag = 1;if( flag ) 阅读全文
posted @ 2019-02-12 08:54 NULL_ROOT 阅读(1075) 评论(0) 推荐(1)