第三课:vi编辑器与C语言

vi编辑器:
1、vi编辑器有三种模式:底行模式,命令模式,插入模式

        命令模式:
            1、从命令模式切换到插入模式:
                I/i:光标移动到当前行的最左端/在光标左端输入
                A/a:光标移动到当前行的最右端/在光标右端输入
                O/o:光标移动到上一行(另起一行)/光标移动到下一行(另起一行)
            2、复制:
                            复制行:(n)yy            n>0    (如需复制从光标起的5行,则输入5yy)
                            复制单词:(n)yw        n>0    ( 如需复制从光标起的5个单词,则输入5yw,需注意单词起始是从光标所在位置算起
            3、粘贴:p
            4、撤销到上一步骤:u
            5、恢复到上一步:ctrl + r
            6、替换:
                            只替换一个字符:r
                            连续替换字符:R
            7、定位行数:
                                往上:n-
                                往下:n+
            8、删除:
                                删除字符:(n)x(向右删除)(如需删除从光标起的右边3个字符,则输入3x)    (n)X(向左删除) (如需删除从光标起的左边3个字符,则输入3X)
            9、查找关键字:/key_value        (向下查找key:n    向上查找key:N)

底行模式:
            1显示行号:set nu

2、读取文本文档的内容:cat/more
3、文件对某“用户”操作的“权限”:

        权限:r可读read 4            w可写write 2        x可执行excude 1
        用户:创建u    群组g    其他人o

修改权限:
        chmod 用户+、-权限1,用户+、- 权限2        文件
        
-rw-r--r--. 1 LF LF 210  7月  7 10:27 msg.data 
     (见图1)
  去掉创建者的读的权限
  chmod u-r,g-r,o-r  文件
  增加权限:
  chmod u+r,g+r,o+r 文件
    删除/增加所有人
  chmod a-/+权限  文件
 每个用户:4读2写1执行   4+2+1=7   4+0+0=4(只读) 4+2+0=6(可读写不能执行)
  chmod --- 文件  
 
    4、用户:(特点:1多任务(进程)多用户操作)
 1、切换用户:su 用户名
  
 2、增加用户:useradd  (root权限)
 3、修改密码:passwd 密码  (passworld) 
    注:用户主目录(/home)
   5、为用户的命令分配root的权限:
 root为用户分配的部分权限都是记录在:/etc/sudoers
  注:每次sudo时都会去/etc/sudores中检查该用户的分配策略
  1、为某机器上某用户分配某种命令的权限
            1.1为该用户分配所有机器的所有命令
  用户名  ALL=(ALL)  ALL
     1.2为该用户分配所有机器的某条命令
  用户名  ALL=(ALL)  command
 
   6、编译器:将指定的语言翻译成机器语言
 语言的发展历史:
  1、机器语言:由0/1组成的指令 (计算机可以直接识别)
  2、汇编指令:用助记来替代二进制指令
  3、高级语言:用自然的语言来与机器沟通
 Linux的编译器:gcc/g++/QT
    gcc编译器:是一款优秀(1、编译语言多,2、质量高)的编译器
 源程序:用高级语言编写的程序的文件
  c语言:  .c
  c++语言:.cpp  .C
  java: .java
  OC  : .oc
 编译:
  1、  gcc 源程序.c    注:如果没有指定可执行文件名,默认生成a.out
  2、指定可执行文件名:
  gcc 源程序.c -o 可执行文件名
    执行程序:路径/程序名
        【3、编译过程:(函数) 】
C语言:是高级语言中的一种,是面向过程语言。(强语言)
程序=算法+数据 
1、数据:基本数据类型(整型,字符整型,浮点型)
   常量:不可改变的量
   变量:可以改变的量
  整型:
     整型常量:十进制(0 -1 9 )  八进制01010  16进制0x 【0 1 2,...,9,a,b,c,d,e,f】
     整型变量:可以改变的量
 类型:int short  long  (4 2 8Byte)
 有无符号:signed unsigned (图4)
 定义变量:[有无符号] 类型  变量名;  (分配存储空间)
   注:如果没有标名有无符号,则默认为有符号位
   [signed] short a;
   字符:
 1.字符常量:'a' 
       普通字符:'a'
    转义字符:'\n' '\'' '\t'  '\\'
   字符串常量:"abcdef"  
 2.字符变量:  
    3.ASCII码:由于计算机只能识别0/1,只能由一串01组成的来替代字符
3、各进制转换为十进制: 
 十进制的权:10
 二进制的权:2   1010---》
       八进制的权:8
4、计算机的存储单元:存储信息的空间
   最小的存储单元:bit    (0或1)       10->1010    16bit
   基本存储单元:Byte 1Byte=8bit
   其他:  1Kb=1024Byte=2^10Byte
    1MB=1024KB
    1GB=1024MB
    1TB=1024GB 
    原码(二进制):10-》  0000 1010      -1-》1000 0001
    反码      10-》  1111 0101 (原码取反)-1-》 1111 1110
    补码      10-》  1111 0110  (反码+1)   -1-》 1111 1111

 
 
运算符:
  1、求某数据类型或者变量的存储空间长度: sizeof    注:以Byte为单位 
  2、赋值运算符:
  左值=右值;  注:左值必须为变量

猜你喜欢

转载自blog.csdn.net/huangxukun/article/details/80953207