zoukankan      html  css  js  c++  java
  • 20145225 《信息安全系统设计基础》第2周学习总结

    20145225 《信息安全系统设计基础》第2周学习总结

    一、vim编辑器

    在命令行中输入vimtutor,跟着教程练习了几遍,对vim编辑器有了初步的了解,但以后还需要常用才能熟练使用。

    简单操作:

    i → Insert 模式,按 ESC 回到 Normal 模式.

    x → 删当前光标所在的一个字符。

    :wq → 存盘 + 退出 (:w 存盘, :q 退出)  

    dd → 删除当前行,并把删除的行存到剪贴板里

    p → 粘贴剪贴板 hjkl (强例推荐使用其移动光标,但不必需) →你也可以使用光标键 (←↓↑→). 注: j 就像下箭头。

    :help <command→ 显示相关命令的帮助。你也可以就输入 :help 而不跟命令。

    进阶操作:

    各种插入模式

    a → 在光标后插入

    o → 在当前行后插入一个新行

    O → 在当前行前插入一个新行

    cw → 替换从光标所在位置后到一个单词结尾的字符

    简单的移动光标

    0 → 数字零,到行头

    ^ → 到本行第一个不是blank字符的位置(所谓blank字符就是空格,tab,换行,回车等)

    $ → 到本行行尾

    g_ → 到本行最后一个不是blank字符的位置。

    /pattern → 搜索 pattern 的字符串(如果搜索出多个匹配,可按n键到下一个)

    拷贝/粘贴 (p/P都可以,p是表示在当前位置之后,P表示在当前位置之前)

    P → 粘贴

    yy → 拷贝当前行当行于 ddP

    Undo/Redo

    u → undo

    <C-r> → redo

    打开/保存/退出/改变文件(Buffer)

    :e <path/to/file> → 打开一个文件

    :w → 存盘

    :saveas <path/to/file> → 另存为 <path/to/file>

    :x, ZZ 或 

    :wq → 保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车)

    :q! → 退出不保存 :qa! 强行退出所有的正在编辑的文件,就算别的文件有更改。

    :bn 和 :bp → 你可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件。

    二、GCC

    • 预处理:gcc –E hello.c –o hello.i;gcc –E调用cpp
    • 编 译:gcc –S hello.i –o hello.s;gcc –S调用ccl
    • 汇 编:gcc –c hello.s –o hello.o;gcc -c 调用as
    • 链 接:gcc hello.o –o hello ;gcc -o 调用ld

    静态库和动态共享库的代码区别:

    创建

    静态库的创建需要调用归档工具ar:
    gcc -c addvec.c multvec.c
    ar rcs libvector.a addvec.o multvec.o
    
    而动态库只需要gcc即可:
    gcc -shared -fPIC -o libvector.so addvec.c multvec.c

    链接

    静态库的链接需要先编译生成.o文件,然后再和库链接,并且需要staric命令构建一个完全链接的可执行文件:
    gcc -02 -c main2.c
    gcc -static -o p2 main2.o ./libvector.a
    
    动态库可以直接把.c文件和库文件链接
    gcc -o p2 main2.c ./libvector.so

    练习:

    建立静态库,并命名为math1.a

    链接main.o和静态库math.a(上面已经把main.c编译成main.o)

    运行:

    建立动态库,并命名为math2.so

    运行:

    编写makefile:
    静态库——math3:

    动态库math4:

    代码托管

    https://git.oschina.net/nizaikanwoba/xinxianquanxitongshejijichu/tree/master

    参考资料

  • 相关阅读:
    HTML常用标签
    消息机制JMS
    一个Socket连接管理池(心跳机制)
    Java调用其他程序时waitFor()阻塞
    JDBC连接数据库
    mysql入门
    WebService到底是什么
    Netty详解
    Mongodb集群搭建
    JavaScript入门
  • 原文地址:https://www.cnblogs.com/nizaikanwoma/p/5907452.html
Copyright © 2011-2022 走看看