\ No newline at end of file
diff --git a/article/027o3g1x/index.html b/article/027o3g1x/index.html
new file mode 100644
index 0000000..65f1473
--- /dev/null
+++ b/article/027o3g1x/index.html
@@ -0,0 +1,11 @@
+程序结构和执行
long exchange (long *xo,long y){
+ long x=*xp;
+ *xp=y;
+ return x;
+}
long exchange(long *xp,long y) xp int %rdi,y in %rsi
+1 exchange:
+2 moveq (%rdi),%rax 取%rdi地址指向的内存空间的值传送给%rax。xp是指针,指针的值在寄存器中,那么解引用指针得出指针指向的值,这个"解引用"的操作映射为(%rdi)
+3 movq %rsi,(%rdi) 作为对比这里不加括号,因为值就存储在%rsi寄存器中,取%rsi寄存器存储的值,移动到%rdi寄存器值所指向的内存中。
+4 ret
pushq S 栈指针减少8(指针大小) 将四字压入栈 因为栈是倒过来画的地址由高到低 等价于 subq $8 ,%rsp movq %rbq,(%rsp) popq D 栈指针加8 将四字弹出 等价于 movq (%rsp),%rax addq $8,%rsp
算数操作 leaq S, D D <-&S 把S的地址传送给D INC D D <-D+1 加1 DEC D D <-D-1 减1 NEG 取负 NOR 取补 ADD 加 SUB S,D D<-D+S 减 IMUL 乘 XOR 异或 OR 或 AND 与 SAL S,D D <-D<<k 左移 SHL 左移同上 SAR 算数右移 SHR 逻辑右移
\ No newline at end of file
diff --git a/article/72dkdlbu/index.html b/article/72dkdlbu/index.html
new file mode 100644
index 0000000..b6e635b
--- /dev/null
+++ b/article/72dkdlbu/index.html
@@ -0,0 +1,87 @@
+fast_io_sixfile
fast_io::filebuf_file fbf("hello.txt", fast_io::open_mode::out);
+std::ostream myosm(fbf.fb);
+myosm<<"Hello World from std::ostream\n";
+print(fbf,"Hello World from fast_io print\n");
filebuf_io_observer fiob{fout.rdbuf()};
+posix_io_observer piob{static_cast<posix_io_observer>(fiob)};
+println("fd in the ofstream fout is ",piob.fd);
\ No newline at end of file
diff --git a/article/d3sghq29/index.html b/article/d3sghq29/index.html
new file mode 100644
index 0000000..b8d2ec3
--- /dev/null
+++ b/article/d3sghq29/index.html
@@ -0,0 +1,7 @@
+fast_io_manipulators
\ No newline at end of file
diff --git a/article/j3e883z1/index.html b/article/j3e883z1/index.html
new file mode 100644
index 0000000..becc6c4
--- /dev/null
+++ b/article/j3e883z1/index.html
@@ -0,0 +1,119 @@
+vscode_clang
+-L<dir>, --library-directory <arg>, --library-directory=<arg>
+Add directory to library search path
+
+-flto-jobs=<arg>
+Controls the backend parallelism of -flto=thin (default of 0 means the number of threads will be derived from the number of CPUs detected)
+
+-flto=<arg>, -flto (equivalent to -flto=full), -flto=auto (equivalent to -flto=full), -flto=jobserver (equivalent to -flto=full)
+Set LTO mode. <arg> must be ‘thin’ or ‘full’.
+
+-fuse-ld=lld 指定链接器为lld
+
+-rtlib=compiler-rt 指定[低级运行时库](https://compiler-rt.llvm.org/)
+
+
+-unwindlib=libunwind 这玩意不支持windows系统时是给 elf格式文件用的 参考[这个](https://github.com/libunwind/libunwind)
+
+指定栈回退的库确定 ELF 程序执行线程的当前调用链,并在该调用链的任意点恢复执行。主要是处理异常和调用栈(debug)的
+
+-unwindlib=<arg>, --unwindlib=<arg>
+Unwind library to use. <arg> must be ‘libgcc’, ‘unwindlib’ or ‘platform’.
+
+-lunwind 链接unwind库
+
+-lc++abi 链接cxxabi 库 这玩意是为了生成的abi兼容 libc++abi is a new implementation of low level support for a standard C++ library.
+简单说就是libc++的底层实现比如异常的一些[玩意](https://libcxxabi.llvm.org/)
+
+
+-lntdll ntdll 是windows的内核dll NT Layer DLL 包含一些系统调用 异常处理等功能
+
+
+-stdlib=<arg>, --stdlib=<arg>, --stdlib <arg>¶
+C++ standard library to use. <arg> must be ‘libc++’, ‘libstdc++’ or ‘platform’.
\ No newline at end of file
diff --git a/article/j3qgcpng/index.html b/article/j3qgcpng/index.html
new file mode 100644
index 0000000..bc00499
--- /dev/null
+++ b/article/j3qgcpng/index.html
@@ -0,0 +1,75 @@
+c++编程语言第四版
When we talk about portability of C++ programs, we usually mean portability of source code; that is, the source code can be successfully compiled and run on a variety of systems
The ISO C++ standard defines two kinds of entities: • Core language features, such as built-in types (e.g., char and int) and loops (e.g., for-statements and while-statements) • Standard-library components, such as containers (e.g., vector and map) and I/O operations (e.g., << and getline())
C++ is a statically typed language. That is, the type of every entity (e.g., object, value, name, and expression) must be known to the compiler at its point of use. The type of an object determines the set of operations applicable to it
Every C++ program must have exactly one global function named main(). The program starts by executing that function. The int value returned by main(), if any, is the program’s return value to "the system." If no value is returned, the system will receive a value indicating successful completion.
Every name and every expression has a type that determines the operations that may be performed on it A declaration is a statement that introduces a name into the program. It specifies a type for the named entity: • A type defines a set of possible values and a set of operations (for an object). • An object is some memory that holds a value of some type. • A value is a set of bits interpreted according to a type. • A variable is a named object
A char variable is of the natural size to hold a character on a given machine (typically an 8-bit byte), and the sizes of other types are quoted in multiples of the size of a char. The size of a type is implementation-defined (i.e., it can vary among different machines) and can be obtained by the sizeof operator; for example, sizeof(char) equals 1 and sizeof(int) is often 4
double d = 2.2; //初始化浮点数
+int i = 7; // 初始化整数
+d = d+i; // 求和赋值给d
+i=d∗i; // 将产生的值赋值给i(将双精度浮点数截断转换为整型)
C++ offers a variety of notations for expressing initialization, such as the = used above, and a universal form based on curly-brace-delimited initializer lists
简单的说c++提供了花括号初始化器,是得我们在初始化变量时(定义),可以这么写
double d1 = 2.3;
+double d2 {2.3};
+complex<double> z = 1; // a complex number with double-precision floating-point scalars
+complex<double> z2 {d1,d2};
+complex<double> z3 = {1,2}; // the = is optional with { ... }
+vector<int> v {1,2,3,4,5,6};
We use auto where we don’t hav e a specific reason to mention the type explicitly. ‘‘Specific reasons’’ include: • The definition is in a large scope where we want to make the type clearly visible to readers of our code. • We want to be explicit about a variable’s range or precision (e.g., double rather than float)
C++ supports two notions of immutability (§7.5): • const: meaning roughly "I promise not to change this value"(§7.5). This is used primarily to specify interfaces, so that data can be passed to functions without fear of it being modified. The compiler enforces the promise made by const. • constexpr: meaning roughly"to be evaluated at compile time"(§10.4). This is used primarily to specify constants, to allow placement of data in memory where it is unlikely to be corrupted, and for performance
//Consider copying ten elements from one array to another:
+void copy_fct()
+{
+int v1[10] = {0,1,2,3,4,5,6,7,8,9};
+int v2[10]; // to become a copy of v1
+v2=v1 //error
+for (auto i=0; i!=10; ++i) // copy elements
+v2[i]=v1[i];
+// ...
+}
同时介绍的这个c++11的范围for循环也很有用,我们可以不用指定边界。对于任意序列我们都可以
void print()
+{
+int v[] = {0,1,2,3,4,5,6,7,8,9};
+for (auto x : v) // for each x in v
+cout << x << '\n';
+for (auto x : {10,21,32,43,54,65})
+cout << x << '\n';
+for (auto& x : {10,21,32,43,54,65}) //我不想单纯的复制序列中的元素而是希望引用,使用auto&这样的写法
+cout << ++x << '\n';
+// ...
+}
enum class Color { red, blue , green };
+enum Traffic_light { green, yellow, red };
+int i = Color::red; // 错误不能隐式转换
+Color c = 2; // 错误2不是Color类型
+int b=Traffic_light::red;//可以
Often, a function has no way of completing its assigned task after an exception is thrown.Then, "handling"an exception simply means doing some minimal local cleanup and rethrowing the exception
通常函数无法完成分配任务时需要抛出异常,并且处理剩余的清理工作。异常是RAII的关键概念。
静态断言略过。
\ No newline at end of file
diff --git a/article/jaovy4gg/index.html b/article/jaovy4gg/index.html
new file mode 100644
index 0000000..7c96711
--- /dev/null
+++ b/article/jaovy4gg/index.html
@@ -0,0 +1,90 @@
+搭建vscode-cpp环境
name
+预设的名称,一般用表示平台或编译期的版本名字;
+
+vendor
+可选内容,提供供应商的信息,Cmake一般不管除非有所谓映射(不用管)
+
+displayName
+此预设的个性化名词(无关紧要)一般有编译期名字代替如"GCC 15.0.0 x86_64-w64-mingw32"
+
+description
+自定义的描述(无关紧要)一般使用本地编译期所在路径描述
+
+steps
+A required array of objects describing the steps of the workflow. The first step must be a configure preset, and all subsequent steps must be non- configure presets whose configurePreset field matches the starting configure preset. Each object may contain the following fields:
+
+type
+A required string. The first step must be configure. Subsequent steps must be either build, test, or package.
+
+name
+A required string representing the name of the configure, build, test, or package preset to run as this workflow step.
\ No newline at end of file
diff --git a/article/oy4qci0t/index.html b/article/oy4qci0t/index.html
new file mode 100644
index 0000000..6c3db00
--- /dev/null
+++ b/article/oy4qci0t/index.html
@@ -0,0 +1 @@
+llvm链接时优化
\ No newline at end of file
diff --git a/article/pc9qmrqh/index.html b/article/pc9qmrqh/index.html
new file mode 100644
index 0000000..cf475f1
--- /dev/null
+++ b/article/pc9qmrqh/index.html
@@ -0,0 +1 @@
+win下的生成工具
\ No newline at end of file
diff --git a/article/vqkwmfa2/index.html b/article/vqkwmfa2/index.html
new file mode 100644
index 0000000..434c839
--- /dev/null
+++ b/article/vqkwmfa2/index.html
@@ -0,0 +1,2 @@
+c#随记
\ No newline at end of file
diff --git a/article/wpu7x9jw/index.html b/article/wpu7x9jw/index.html
new file mode 100644
index 0000000..f67cdcf
--- /dev/null
+++ b/article/wpu7x9jw/index.html
@@ -0,0 +1,126 @@
+搭建vscode-cpp环境
name
+预设的名称,一般用表示平台或编译期的版本名字;
+
+vendor
+可选内容,提供供应商的信息,Cmake一般不管除非有所谓映射(不用管)
+
+displayName
+此预设的个性化名词(无关紧要)一般有编译期名字代替如"GCC 15.0.0 x86_64-w64-mingw32"
+
+description
+自定义的描述(无关紧要)一般使用本地编译期所在路径描述
+
+steps
+A required array of objects describing the steps of the workflow. The first step must be a configure preset, and all subsequent steps must be non- configure presets whose configurePreset field matches the starting configure preset. Each object may contain the following fields:
+
+type
+A required string. The first step must be configure. Subsequent steps must be either build, test, or package.
+
+name
+A required string representing the name of the configure, build, test, or package preset to run as this workflow step.
\ No newline at end of file
diff --git a/article/xst10xfz/index.html b/article/xst10xfz/index.html
new file mode 100644
index 0000000..48186e2
--- /dev/null
+++ b/article/xst10xfz/index.html
@@ -0,0 +1,63 @@
+fast_io_tutorials