![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++学习
主要是学习C++过程中的笔记
夏言谦
这个作者很懒,什么都没留下…
展开
-
C语言有关文件的操作
函数,无法读取到文件在该偏移量的内容,读取到的内容是0xFF,这是合理的,因为"ab"模式是写模式,并没有读取文件内容的权限,如果使用"ab+"模式打开文件,就可以读取文件内容了。这句话书里写的比较混乱,我第一次读产生了歧义,首先,书中的文件结尾和文件末尾是两个不同的概念,我的理解是,文件末尾是文件的最后一个字节,而文件结尾是一个。再测试一下写操作,可以发现,写入的0xAA以及0xBB、0xCC被追加到了文件的末尾,而不是offset处,并且此时。函数移动的文件指针无关,数据只能追加到文件的末尾。原创 2023-08-07 16:42:34 · 454 阅读 · 0 评论 -
局部变量的初始化问题
不过初始化是个好习惯啊,如果不是极端在意性能(初始化会有写内存的操作),建议都尽量初始化。放到main函数外,作为全局变量的话则不会有这个问题,因为全局变量会自动初始化为0。今天在学习《C primer plus》的第17章过程中,出现了一个段错误的问题。没有初始化为NULL的原因,这导致第一次创建链表节点时不会进入。没有初始化的野指针会导致难以预料的结果。原创 2023-07-20 20:00:14 · 145 阅读 · 0 评论 -
同步回调函数和异步回调函数
同步回调函数和异步回调函数转载 2022-11-17 15:09:03 · 156 阅读 · 1 评论 -
get_num.c源码分析
get_num.c源码分析原创 2022-09-29 16:23:24 · 673 阅读 · 0 评论 -
fwrite()函数的一次错误使用
fwrite()函数的使用原创 2022-09-20 18:27:41 · 1105 阅读 · 0 评论 -
fork()创建多个进程
【代码】fork()创建多个进程原创 2022-09-09 15:10:32 · 468 阅读 · 0 评论 -
s_gets()函数解析
在学习《C primer plus》时,有一个获取输入的函数s_gets()出现频率非常高,此处记录下对这个函数的理解,该函数首次出现于程序清单11.10。函数源代码:char *s_gets(char *st, int n) { char *ret_val; char *find; ret_val = fgets(st, n, stdin); if(ret_val) { find = strchr........原创 2022-03-05 20:28:33 · 3990 阅读 · 5 评论 -
C++交换a,b的值
#include <iostream>using namespace std;int main(){ int a = 1; int b = 10; a = a + b - (b = a); cout<<a<<endl; cout<<b<<endl; }转载 2020-11-02 13:37:12 · 3180 阅读 · 3 评论 -
交通罚单管理系统
交通罚单管理系统大一时的C语言程序设计的课设,当时上课没怎么听,在网络和同学的帮助下完成的,现在看来代码不足很多,贴在这留个纪念吧。主要实现功能就是对交通罚单(一个txt文件)的增删查改,交通罚单的txt文件需要自己准备放在工程目录下。#define NUM 100#define TEST 28#include<stdio.h>#include<string.h>...原创 2019-09-05 10:47:57 · 1526 阅读 · 0 评论 -
关于C++ primer 15.5节访问与继承控制的理解
关于C++ primer 15.5节访问与继承控制的理解第一次阅读时,对P543第一节“受保护的成员”感到有点难以理解,后来发现是阅读过程中对第二条和第三条特性产生了歧义,最后浪费了蛮多时间。知乎上也有对这个问题的讨论链接,有一些回答也做出了解答可以作为参考,下面是我自己的理解。一、受保护的成员先来看看C++primer这一节的原文: * 和私有成员类似,受保护的成员对于类的用户...原创 2018-07-11 16:16:29 · 291 阅读 · 0 评论 -
EffectiveC++条款10和条款21的理解
Effective C++中条款10和条款21的理解一个多月前把Effective C++看完了,后来就是期末考试,一直没有时间好好的整理一下,今天再翻一遍发现好多知识点和笔记都不懂了,果然不能再拖了,应该学完就汇总成笔记的。 首先回顾一下条款10和条款21的内容吧。一、条款10 令operator=返回一个reference to *this书上的代码如下:class ...原创 2018-07-14 15:51:25 · 677 阅读 · 0 评论 -
EffectiveC++条款25的理解
Effective C++条款25的理解这个条款的全称是考虑写出一个不抛出异常的swap函数,通过研究swap函数的各种改善方法来教你设计一个高效的函数。在阅读过程中,对于全特化和偏特化,类和类模板和函数模板这几者之间的关系不太理解,这里写下自己的一些思考。一、为什么要进行特化?进行特化的原因是为了更高的效率,对于特定的类型,如果你有更好的实现方案,那么编译器就会调用特化版本而不是...原创 2018-08-04 14:54:05 · 723 阅读 · 0 评论 -
EffectiveC++条款29的理解
EffectiveC++条款29的理解本次主要对p131的代码进行分析,还是对pimpl手法——以指针指向一个对象,内含真正数据,这种手法的理解代码本体struct PMImpl //PMImpl="pretty menu Impl"{ std::tr1::shared_ptr<Image> bgImage; int imageChanges;};class...原创 2019-07-09 13:56:45 · 376 阅读 · 0 评论 -
EffectiveC++条款35部分代码理解
EffectiveC++条款35部分代码理解p172页的typedef和函数指针(function pointer)文中有这样一段代码typedef int (*HealthCalcFunc)(const GameCharacter&);首先理解typedef的用法:参考typedef的用法,C语言typedef详解当然里面并没有提到type和函数指针的情况,实际上typed...原创 2019-07-09 16:03:54 · 261 阅读 · 0 评论