undefined

gcc 命令解释

gcc 命令解释

|选项 |解释 |
|-ansi |只支持 ANSI 标准的 C 语法。这一选项将禁止 GNU C 的某些特色, 例如 asm 或 typeof 关键词。|
|-c |只编译并生成目标文件。 |
|-DMACRO |以字符串”1”定义 MACRO 宏。 |
|-DMACRO=DEFN|以字符串”DEFN”定义 MACRO 宏。 |
|-E |只运行 C 预编译器。 |
|-g |生成调试信息。GNU 调试器可利用该信息。 |
|-IDIRECTORY |指定额外的头文件搜索路径DIRECTORY。 |
|-LDIRECTORY |指定额外的函数库搜索路径DIRECTORY。 |
|-lLIBRARY |连接时搜索指定的函数库LIBRARY。 |
|-m486 |针对 486 进行代码优化。 |
|-o FILE |生成指定的输出文件。用在生成可执行文件时。 |
|-O0 |不进行优化处理。 |
|-O 或 -O1 |优化生成代码。 |
|-O2 |进一步优化。 |
|-O3 |比 -O2 更进一步优化,包括 inline 函数。 |
|-shared |生成共享目标文件。通常用在建立共享库时。 |
|-static |禁止使用共享连接。 |
|-UMACRO |取消对 MACRO 宏的定义。 |
|-w |不生成任何警告信息。 |
|-Wall |生成所有警告信息。 |

undefined

git 分支操作

Git 本地仓库有三大区域:工作区、暂存区、版本区

添加 SSH 关联授权

  • 为了在 git push 的时候不用输入用户名和密码。可以在系统中创建 SSH 公私钥,并将公钥放在 github 指定位置。
  • 在linux 下执行命令 ssh-keygen,生成 公私钥。可以发现 公钥放在 ~/.ssh/id_rsa.pub 文件中,使用cat 命令将公钥复制出来。
  • 在 github 网页上添加公钥,title 自定义即可
查看更多

undefined

当 struct 中的字段没有值时,使用 json.Marshal 方法并不会自动忽略这些字段,而是根据字段的类型输出了他们的默认空值,这往往和我们的预期不一致,json 包提供了对字段的控制手段,我们可以为字段增加 omitempty tag,这个 tag 会在字段值为零值(int 和 float 类型零值是 0,string 类型零值是 “”,对象类型零值是 nil)时,忽略该字段。

1
2
3
4
5
6
type PersonAllowEmpty struct {
Name string `json:",omitempty"`
Age int64 `json:",omitempty"`
Birth time.Time `json:",omitempty"`
Children []PersonAllowEmpty `json:",omitempty"`
}

如果想要某一个字段在任何情况下都被 json 包忽略

1
2
3
4
5
6
type Person struct {
Name string `json:"-"`
Age int64 `json:"-"`
Birth time.Time `json:"-"`
Children []string `json:"-"`
}