博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C语言编程透视
阅读量:6871 次
发布时间:2019-06-26

本文共 779 字,大约阅读时间需要 2 分钟。

hot3.png

一.vim:

1.编码风格与    indent    命令
2.切换到粘贴模式解决    Insert    模式自动缩进的问题  set    paste/set nopaste
3.全局替换某个变量名     %s#old_variable#new_variable#g 和 %s#\<old_variable\>#new_variable#g
4.在编辑模式下查看手册 shift+k
5.删除空行 g/^$/d或%s#^\n##g。 多个空行转换为一个可以输入        g/^\n$/d        或者        %s#^\n$##g

二. Gcc    编译的背后

1.预处理
    include/define/编译条件 处理。
    gcc 查看编译细节-v;参数 -E, -S, -c, -o对应工具cpp, cc1, as, ld
2.编译
    语法检查,编译器优化,生成汇编语言文件。
3.汇编
    生成目标代码(可重定向文件elf)
    1.工具 objdump    ,    objcopy    ,    nm    ,    strip,    readelf
    2.ELF文件结构及三种ELF文件(目标文件/静态库、动态库、可执行文件)区别
    3. ELF文件结构:ELF文件头,程序头表(段表),section1 section2...,section headers table节区头表
4.链接

三. 程序执行

     命令行接口bash,bash的启动,命令的解析。
1. /bin/bash ->app
2. /bin/login ----/etc/passwd --execve--->/bin/bash
3. /sbin/init(linux)默认启动的第一个程序---> /sbin/getty  ---> /etc/login
4.命令解析--管道、fd的复制
 

转载于:https://my.oschina.net/u/1431835/blog/1810380

你可能感兴趣的文章
react项目中使用mocha结合chai断言库进行单元测试
查看>>
css3动画
查看>>
Spring Boot 单元测试二三事
查看>>
电脑中播放的声音怎么在线录制
查看>>
微信小程序开发心得
查看>>
nfs
查看>>
Angular vs React 最全面深入对比
查看>>
containerd项目正式从CNCF毕业
查看>>
中台之上(十二):如何快速设计业务架构?
查看>>
C#的未来:托管指针
查看>>
微软发布UWP Bridge项目将一切应用转为Windows应用
查看>>
语义鸿沟、异构鸿沟、数据缺失,多模态技术如何跨过这些坎?
查看>>
vue-学习笔记(更新中...)
查看>>
MongoDB用户权限篇
查看>>
如何在页面上动态实现浮动窗口?
查看>>
使用dubbo时applicationContext.xml报错的解决办法
查看>>
web程序的统一认证实现:filter操作
查看>>
[Unity3d for android]屏幕触摸事件
查看>>
自动创建数据库镜像,证书交换
查看>>
Printer server cluster
查看>>