随笔分类 - CPP
这里主要记录自己的c++的学习的心得。
摘要:这几个都是动态申请空间用到的关键字。 malloc定义:百度百科 calloc定义:百度百科 new定义:百度百科 、博客园FutureNow这个人整理的挺好的。 malloc和calloc的区别: calloc在动态分配完内存后,自动初始化该内存空间为零,而malloc不做初始化,分配到的空间中的
阅读全文
摘要:二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改,序列化的结果是一个字符串,序列化时通过 某种符号表示空节点(#),以 ! 表示一个结点值的结束(value!)。
阅读全文
摘要:这个是指针的引用 通俗的讲就是给原来的指针重新起一个名字,使得两个指针的意思是相同的。 这里有一篇文章的地址:https://zhidao.baidu.com/question/334477425.html int *(&p)是指针变量的引用。 指针变量同普通变量一样,使用之前不仅要定义说明,而且必
阅读全文
摘要:转自博客:https://blog.csdn.net/crusierLiu/article/details/82626090
阅读全文
摘要:题目描述: 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(in
阅读全文
摘要:这道题的核心是从两边往中间进行作比较。 由题目我们可以知道除了最开始的根节点之外,剩余的节点都需要进行比较,每次进行比较的个数都是两个, 所以我们可以使用栈对这个二叉树进行操作。 每次压栈的都是对称的两个节点。 /* struct TreeNode { int val; struct TreeNod
阅读全文
摘要:/* struct TreeLinkNode { int val; struct TreeLinkNode *left; struct TreeLinkNode *right; struct TreeLinkNode *next; TreeLinkNode(int x) :val(x), left(
阅读全文
摘要:这道题是牛客中的一道题,这道题考察的是约瑟夫问题,这里有一篇简书,大家可以借鉴一下。 这里面的关键问题所在主要是弄懂序号之间的转化。 那篇简书的地址下面给出,大家可以去这个地址自行研究一下。 https://www.jianshu.com/p/b76d49462a46
阅读全文
摘要:如图所示,fgets函数配合着feof函数进行使用,这个里面fget函数只判断当前行的函数是否到达了尾端。不判断 下一行是否达到了尾端,所以正如红框中的读文件的操作,出现了文件的尾行读取了两次。 但是如果加上了数组s的重新刷新。这样就不会出现重复读的现象了。
阅读全文
摘要:首先明确一点c语言中返回来的地址是虚拟地址(逻辑地址),虚拟地址和物理地址之间的转化是操作系统自动进行完成的。 有关c语言中返回的地址不是物理地址这里提供一个链接: https://blog.csdn.net/fenggewan/article/details/88408734 逻辑地址,是操作系统
阅读全文
摘要:#include <stdio.h> void changeAddress(int** value); int main() { int arr[] = {1, 2, 3}; int* p = arr; // 改变之前 p 的地址 printf("%p\n", p); // q 用来保存改变之前 p
阅读全文
摘要:#include<stdio.h> struct student { char name[16];//name unsigned char age;//年龄 unsigned char score;//成绩 char classes[100];//班级 }; void swap(struct stu
阅读全文
摘要:char s[20];s="helo";这样是错误的,原因就是不能用赋值语句将一个字符串常量直接给一个字符数组赋值。char s[20];char ss[]="hello";s=ss;这也是错误的,原因是不能用赋值语句将一个字符数组直接给一个字符数组赋值即字符串的复制(c语言中,但是在c++的str
阅读全文
摘要:在Linux中进行动态创建一个数组,思路就是,通过动态创建堆中的空间,来满足数组, 首先我们需要知道要创建的数组的长度大小,然后就是通过calloc函数(这里也可以用malloc函数这里可以根据自己的个人喜好)进行动态创建(这个函数存在于stdlib.h中) 下面直接上代码:并附上一个c代码中内存的
阅读全文
摘要:如果你是在Linux中正在做一个计算机,输入的参数中包含* 可能会输入不了。当你查看的时候是a,但是 + - / 这几个符号都是好使的。 当输入\* 来代替*就可以了。这里涉及到一个转移符的作用。需要进行转移具体是我也不清楚。 main函数中的各个参数的含义表示: https://blog.csdn
阅读全文
摘要:#include<stdio.h> int main() { char str[100] = "你好呀我也好"; char *str_start = &str[0]; int j = 0; while(str[j])j++; char *str_end = &str[j-1]; while(str_
阅读全文

浙公网安备 33010602011771号