C++
文章平均质量分 71
XV_
喜欢读书,热衷于探究本质,热爱技术,终身学习,不断成长。
展开
-
C语言不能对全局变量使用malloc函数
reference:Malloc function (dynamic memory allocation) resulting in an error when it is used globally#include<stdio.h>#include<string.h>#include <stdlib.h>char *y = (char *)malloc(40); // gives an error hereint main(){ strcpy(.原创 2021-05-06 21:59:59 · 2439 阅读 · 0 评论 -
【精华文】C语言结构体特殊情况分析:结构体指针 / 基本数据类型指针,指向其他结构体
参考链接:Structure pointer pointing to different structure instance注:可以查看此篇的问题和唯一的回复,那是相对正确的,不要看comment,有很多错误。我是拒绝分析这种问题的,因为似乎没有人会这么乱用,但是……在华保健老师的编译原理示例代码和Linux0.11内核中,就遇到了这么神奇的代码,那就不得不研究一下了!毕竟是大神写的代码,我不知道应该是我渣。1 测试代码#include <stdio.h>#include <.原创 2021-04-21 10:16:12 · 740 阅读 · 0 评论 -
【C language】动态数组的创建和使用
在C语言中,使用malloc函数创建动态数组,使用一个指针指向它,使用下标进行访问。unsigned long *a = (unsigned long *)malloc(2 * sizeof(int));a[0] = 1000;a[1] = 2000;printf("%d %d\n", a[0], a[1]);free(a);上述例子,申请了两个int空间的动态数组,使用int *指向它,使用a[0],a[1]访问,这与数组访问一样,区别就是动态申请内存在堆空间,还需要使用free进行释放,原创 2021-04-18 15:11:02 · 1377 阅读 · 0 评论 -
【C language】typedef的使用:结构体、基本数据类型、数组
typedef基本数据类型typedef int a;a abc;后面的a abc就等价于int abctypedef结构体typedef struct a { int a; int b;} abc;abc aaa;对于上述,abc aaa;就等价于struct a aaa;简而言之,typedef的本质,就是构建等价关系。第一个例子,让a和int等价;第二个例子,让abc和struct a { int a; int b; };等价;这样一来,简化书写。不过也有特别的原创 2021-04-18 14:53:40 · 529 阅读 · 0 评论 -
C语言多文件编译链接为1个可执行文件的简单原理
参考1:C header files and compilation/linking参考2:计算机系统基础(一)袁春风 (符号链接部分)我们现在有一个简单的工程,有这么几个文件1.t1.hextern int x;void tt();t1.c#include "t1.h"int x;void tt(){ x = 100;}main.c#include <stdio.h>#include "t1.h"int main(){ tt(); p.原创 2021-03-22 12:53:11 · 1895 阅读 · 0 评论 -
C语言中的struct和union区别
参考:Difference between Structure and Union in C二者区别struct这里不做详细说明,因为参考链接中都写明了。只做一些重点强调。struct中声明的变量,在分配空间的时候,struct结构空间大小,大于等于其内部所有变量大小的总和,一般会大于,因为需要字节对齐。我们看一个例子#include <stdio.h>struct MyStruct{ char c; int a; char x; double b;};int.原创 2021-03-21 18:25:02 · 785 阅读 · 0 评论 -
【C++】rand函数的基本使用
rand()函数用于生成伪随机数,每次生成的随机数都不变,方便我们调试程序。重要是的随机数的范围公式(适用整数)公式:确定范围加偏移量例如:a和b是整数[a,b],范围是b - a + 1,偏移量是a,公式:rand() % (b - a + 1) + a(a,b],范围b - a,偏移量a + 1[a,b),范围b - a,偏移量a(a,b),【等价于[a-1,b-1]】最重要的:A % B的结果,范围是0 ~ B-1。...原创 2020-10-06 20:14:26 · 822 阅读 · 0 评论 -
【C++】int与string转换
头文件:<string>,注意,这与<string.h>、<cstring>不是一回事儿语法:int x = to_string(str),其中string str = "1"。原创 2020-10-06 08:40:39 · 105 阅读 · 0 评论 -
【C++学习之路】第一章——C++核心方法总论
1. 核心思想通过实际项目来学习编程,更高效掌握编程规则,以及明白各种语法规则的实际应用。2. 学习C++的方法论2.1 核心方法在实战中学习在错误中学习及时回顾复习2.2 具体实操方法掌握编程思维不刻意记忆语法规则,修炼实战技能在循序渐进的实战项目中学习不断试错,在错误中学习成长2.3 解决错误的办法自己研究30分钟查阅书籍资料,百度谷歌等重复1,2,如果...原创 2020-01-16 22:41:29 · 239 阅读 · 1 评论