2 元口

尚未进行身份认证

北航本科-硕士研究生毕业

等级
TA的排名 11w+

回调函数示例(清晰易懂)

#include <stdio.h>#include <stddef.h>#define CALLBACK_MAX 10typedef void (*callback_t)(void);static callback_t callbacks[CALLBACK_MAX];static size_t n = 0;void register_callback(...

2019-12-31 22:53:13

scanf()函数的真实含义及其正确用法

本文章翻译自公开外文,请谨慎转载。0. scanf()函数有什么问题?规则0: 不要使用scanf()(除非你知道你在干什么)1. 我想从用户那读入一个数下面是一个常见的用法:#include <stdio.h>int a;scanf("%d", &a);printf("你输入的数字是:%d\n", a);你在写这段代码时大概应该知道“%d”是...

2019-11-17 22:01:15

操作系统——进程原理篇

进程进程及线程是操作系统对CPU进行管理的手段,其中最重要的内容是并发。因为要并发,所以发明了进程,又进一步发明了线程。进程是在CPU层面上提供并发的抽象(进程与进程间并行);线程则属于在进程这个层次上再提供一层并发的抽象(进程内部线程与线程间的并行)。进程:一个程序加载到内存后就变为进程,即进程=程序+执行。每个进程占用一片内存空间。因为一个进程的执行过程中只占用其生命周期的一部分来使用...

2019-05-01 14:48:56

操作系统——内存原理篇

操作系统内核的学习大概从2019.2.2开始,之后春节近一个月进展缓慢没做什么具体工作(期间帮张jm做项目浪费了不少时间),从大概3.3开始进行jos实验。内存原理篇的核心思想是虚拟内存:通过这种机制,操作系统将内存的容量扩增至无限大、将内存访问速度大幅提高make //从源代码构建出可执行的boot loader和kernel文件,即obj/kern/kernel.img ...

2019-08-29 22:05:24

避免成员函数的参数名与成员变量名相同

例如下面这个简单代码:class Test{private: int action=0;public: void set_action(int action){ action = action; //这条语句并不会将成员变量action的值设为想要的。 } int get_action(){ return action; }};int main()...

2019-10-13 19:39:47

报错dyld: Library not loaded原因:链接时和运行时都需要指定动态库路径(利用@rpath指定运行时动态库路径)

最近在mac上写了一个动态库,然后又写了一个可执行文件来链接它并使用该动态库。链接时一切正常,但是在执行生成的可执行文件时出现了下面的链接报错:dyld: Library not loaded: ./obj/libtest.dylibReferenced from: /Users/zeng/Workspace/practice_make/generate_lib/./testReaso...

2019-10-02 17:09:16

C++的cin/cout输入输出流概念及其与缓冲区关系

转自:https://blog.csdn.net/selina8921/article/details/79067941其他链接:https://blog.csdn.net/selina8921/article/details/79067941https://www.cnblogs.com/gujiayue/p/5536661.html(类比了送快递与cin缓冲)https://bl...

2019-08-26 23:58:27

deal.II中文文档

我翻译了deal.II的一些文档,初学者可以用来入门。放在github上了,有意愿的可以继续翻译并且发起pull request。链接:https://github.com/2012ZGZYY/Dual_error_DG/tree/master/deal.II翻译文档禁止转载。...

2019-07-12 08:12:17

如何取消亚马逊AWS云计算服务EC2自动收费

去年用过一次aws的免费云计算服务,免费一年。今天突然收到信用卡扣费短信,原来是去年免费服务自动续约了,老外这消费模式真是傻逼。。。没办法,上官网查一下,把那个服务取消吧。真是折腾了好久才找到那个取消服务的入口,特此记录一下给需要的童鞋。1、登录aws控制台,点击右上角的用户名(你的账户),在下拉菜单中选择我的账单控制面板(billingdashboard)然后可看到如下页面:...

2019-06-04 22:44:19

怎么写makefile——超详细指南

https://www.cnblogs.com/mfryf/p/3305778.html

2019-05-25 23:12:20

CSAPP深入理解计算机系统笔记

csapp的学习从2019.3.18开始。从05.10-08.01这几个月一直工作,重心转去学了点软件工程和面向对象的东西,中断了这部分的学习。从08.01重新继续这部分的学习,但平时工作忙,只能挤出很少的时间。前言:如果是第一次看csapp这本书,建议先不要看,直接去看上交软院的课程主页,按照上面的课件学习。推荐一个个人博客“不周山之读薄CSAPP”,也可以按这个博客学习。这本书的必...

2019-04-26 22:19:25

内联汇编语法说明

为什么使用内嵌汇编?——解决一些无法直接用C或C++实现的功能,比如C中没有现成的函数或语法可用。内联汇编的使用原理:在内嵌汇编中,可以将C语言变量指定为汇编指令的操作数,而且不用去管如何将C语言变量的值读入哪个寄存器,以及如何将计算结果写回C变量,你只要告诉程序中C语言变量与汇编指令操作数之间的对应关系即可, GCC会自动插入代码完成必要的操作。使用内嵌汇编,要先编写汇编指令...

2019-04-23 20:42:32

git中的不同分支下的同一文件,到底怎么样才能算作是冲突?

https://segmentfault.com/q/1010000008244754比如有两个分支,master和develop。针对1.txt文件,master分支:2223333 66555develop分支:2224444 77888先是有master,然后我创建了develop分支,然后再在develop分支下修改了1.txt,然后add和commit,然后切...

2019-04-05 21:06:10

为什么使用补码

前言:我在学补码的时候最不明白的是为什么符号位也可以跟后面的位那样做加运算且不对结果造成影响,毕竟符号位代表的是负权重(负的模值)。补码来历可总结如下:计算机里面,只有加法器,没有减法器,所有的减法运算,都必须用加法进行。 用补数代替原数(补一个模),可把减法转变为加法。出现的进位就是模,此时的进位,就应该忽略不计(减一个模)。 二进制下,有多少位数参加运算,模就是在 1 的...

2019-03-24 09:39:54

http请求

输入网址进行访问的时候,要做的第一件事就是输入网页链接(url):* url:uniform resource locator:统一资源定位器(协议://域名:端口/路由?参数)而数据传输使用的协议,一般就是http协议:* http:hyper text transfer protocol:超文本传输协议url基本格式:scheme://host[:port#]/path/...

2019-03-18 14:41:40

docker入门笔记

docker是个平台,在这个平台上利用container可以开发运行程序。image:是个可执行包,包含了运算程序所需的一切。可认为是用于创建container的模板。container:是image的实例化,只在运行时生成;运行一个image可以启动一个container。docker怎么用呢?以有限元库fenics来举个例子。fenics是个开源有限元库,它每年都在稳定地更...

2019-03-18 14:40:30

fenics入门笔记

fenics名称释义:fe:finite element的简写cs:computational software的简写ni:有了fe和cs后,由于最初fenics软件是在芝加哥大学(简称为phoenix)编译的,故而在其间加入ni就很自然而然了。其实就是取个谐音。fenics有如下几个核心部件:1. dolfin:dynamic object-oriented lib...

2019-03-18 14:39:41

利用ROUNDUP函数进行内存对齐

内存对齐:比如一个内存单元的长度为2,为了存取方便我们应该尽量把数据放在2的倍数的位置上(如位置0,2,4,6等),此时称该数据的位置是与某个值(2)对齐的。如果放在了没对齐的地方(比如位置3)上,该数据可能跨过了一次能读取的跨度,就必须读两次才行。为了杜绝这种低效行为,我们使用一个函数ROUNDUP(n, size)来对原地址n进行修改,从而实现内存对齐。举个例子,ROUNDUP(9...

2019-03-17 17:27:24

把二进制文件转换为文本格式(十进制)

首先要清楚文件里,储存的数据的类型,是int,long,longlong还是float,double其次文件有无字节序(大小端)问题这两个问题解决了直接按照数据类型定义一个定长数据,或者数组一次性读入,或者分批读入全部文件。需要的话,读取以后,先转换一下字节顺序fopen,二进制读方式,打开文件,fread读取文件,fclose关闭文件然后转换成十进制ACII格式的数据...

2019-03-04 16:50:31

操作系统——概述

操作系统的角色是管理者,例如管理CPU、内存、磁盘等。具体地讲,包括:* CPU管理(进程管理):如何分配CPU给不同应用和用户,三个目的:1)公平,2)非阻塞,3)优先级* 内存管理:如何分配内存给不同应用和用户,即管理“缓存-主存-磁盘等介质”形成的内存架构* 外存管理(文件系统):如何分配外存(磁盘)给不同的应用和用户,将磁盘变为一个易使用的存储媒介* I/O管理(设备管理)...

2019-02-26 20:43:14

查看更多

勋章 我的勋章
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。