Show newer

学姐被迫隐形
学妹重置过去
这会再来个复制人?
熟练是错?不熟练也是错?那第三态是?🤔

虽说难以启齿,初中那会儿在360应用市场看到的叫JOJO的一个社交平台的默认头像,我觉得好看就下下来了,然后平台没了。。。然而这个默认头像真的好看。

不知不觉又拿C刷屏了,我感到十分抱歉。。。发张紫妈调一下气氛吧。😭

我的个人理解是,如果你用字符数组,实际是当局部变量存储在运行时堆栈的,后面的字符串字面值只用来做初始化。然而如果你直接用字符指针保存字符串字面值的地址的话,实际存储实在静态常量区(群友说的,实际上标准里好像没说),然而不能写值是标准里说的。

Show thread

char *s = "string literal";
题外话:我的名字literal就是字面值。
这个在C语言才能过编译(理论上),C++要报错,因为字符串字面值常量的类型是const char*,隐式转换不能去掉const属性,再因为C语言接口还有很多char*,C艹提供了const_cast来强转转换去掉const,只能自己约束自己只用在兼容代码上,不然就是未定义行为。
C语言中,虽然s看起来可以往里头写,然而标准中不做出任何保证,你可以读取,你要是写就是未定义行为。(此时发生什么都有可能)

clang 的 INPUTS 中的编译器快乐代码(迫真)
cfg-big-switch.c -> 4096 个 case 的 switch
cfg-long-chain1.c
cfg-long-chain2.c
cfg-long-chain3.c -> 4096 个 if 语句
cfg-nested-switches.c -> 两个 switch 嵌套,内外都是一群 case
cfg-nested-var-scopes.cpp -> 两 switch 内外 case 还有一堆变量
macro_pounder_fn.c -> 宏函数膨胀器
macro_pounder_obj.c -> 对象膨胀器?
stpcpy-test.c -> 疯狂拷字符串

魔女酱没事要记得撸龙,纯上课不值得 :pio_cute:
examples/ModuleMaker/ModuleMaker.cpp 这个例子展示怎么写死一个模块然后打印出来
1. 整一个 LLVMContext Context;
2. new Module
3. 生成主函数类型
4. 创建主函数
5. 创建基本快作为主函数函数体
6. 整两个值出来
7. 创建一个指令
8. 指令扔进基本快
9. 再扔一个 return 指令
10. 打印出去

Show older
小森林

每个人都有属于自己的一片森林,也许我们从来不曾走过,但它一直在那里,总会在那里。迷失的人迷失了,相逢的人会再相逢。愿这里,成为属于你的小森林。