嵌入式-----基础学习

目录

一.linnux系统中的基本命令

1.虚拟机中的常用快捷操作

2.终端

2.1 linux

2.2linux-virtual-machine:主机名

2.3 ~:

3.Linux系统中的命令:

1.ls命令:

2.mkdir命令:

3.rmdir命令:

4.touch命令:

5.rm命令:

6.cd命令:

7.pwd命令:

8.cp命令:

9.mv命令:

二.Linux系统的目录结构:

1. 根目录       /

2. 家目录      ~ 

3. 当前目录的上一级目录       ..

4. 路径

三.Linux系统下C语言开发步骤:

1. vim编辑器:

2. 使用gcc编译代码    

3. 程序错误:

4.执行代码    


一.linnux系统中的基本命令

1.虚拟机中的常用快捷操作

    ctrl + alt + t              打开一个新的终端
    ctrl + shift + t            在同一个终端新打开一个窗口
    ctrl + shift + '+'          放大字体
    ctrl + '-'                  缩小字体
    ctrl + alt + 回车           全屏

2.终端

        linux@linux-virtual-machine:~$

2.1 linux

        linux:系统登录的用户名

超级用户

        有且只有一个,用户名为:root 
        操作文件(创建文件、删除文件、修改文件、移动文件)权限更高

普通用户

        可以有多个,也可以一个没有,用户名没有限制(不能与root重名)

 操作文件会收到权限的限制

2.2linux-virtual-machine:主机名
2.3 ~:

        ~:表示家目录

3.Linux系统中的命令:

    格式:
        command [-options] argument1 argument2 argument3 ...

1.ls命令:

        查看当前目录下的文件 

        蓝色:目录文件(文件夹)
        白色:普通文件(文本文件、图片、音视频、压缩包

        ls -a  查看当前目录下的所有文件(包括隐藏文件)
        ls -l  查看当前目录下文件的详细信息

2.mkdir命令:

        创建一个目录文件(文件夹)    mkdir dirname 

3.rmdir命令:

        删除一个空目录文件       rmdir dirname 

4.touch命令:

        创建一个空文本文件     touch filename

5.rm命令:

        删除一个文件

        rm filename

        rm -rf dirname             删除非空目录

6.cd命令:

        切换到某个目录

        cd /  
        cd ~  :切换到家目录。
        cd ..  :切换到上一层目录

7.pwd命令:

        查看当前所在的目录

8.cp命令:

        文件拷贝

        拷贝普通文件:  cp filename dirname

        拷贝目录文件:cp dirname1 dirname2 -rf 

9.mv命令:

        文件移动(文件剪切)mv filename dirname

        修改文件名  mv oldname newname 

二.Linux系统的目录结构:

1. 根目录       /

        根目录是文件系统最顶层目录,存放系统文件

        bin               存放可执行文件
        dev               存放设备文件
        etc               存放配置文件
        lib               存放库文件
        mnt               存放挂载文件目录
        proc              存放进程信息目录
        var               存放日志文件目录

2. 家目录      ~ 

        Linux系统为每个登录用户提供一个家目录(可以在家目录中创建文件、删除文件、修改文          件、执行程序)

        root             /root          超级用户的家目录 
        linux            /home/linux    linux用户的家目录

3. 当前目录的上一级目录       ..

        当前目录                  .   

4. 路径

        (1). 相对路径:登录用户不同,所在目录不同,相同路径会有不同的含义
            dirname 
            ./dirname 
            ../dirname               
            ../../../dirname 
            ~/Desktop/dirname

        (2).绝对路径:登录用户不同,所在目录不同,相同路径不会有不同含义
            /home/linux/Desktop/dirname 

三.Linux系统下C语言开发步骤:

1. vim编辑器:


         1.打开C语言文件(C语言文件以.c结尾) 
                vim filename.c 
    
         2.点击i键进入插入模式 
                i 
    
         3.编写C语言代码 
                #include <stdio.h>

                int main(void)
                {
                    printf("hello world");

                    return 0;
                }

          4.点击ESC
              输入:wq 

              :wq        保存并且退出
              :wq!       强制保存并退出
              :q         退出
              :q!        不保存强制退出
              :w         只保存不退出

2. 使用gcc编译代码 
   

1. 编译hello.c文件默认生成a.out文件 
       gcc hello.c

2. 编译分为4个流程步骤:
        1.预处理:
            将C语言代码展开(处理程序中与#号相关的代码)

            #include <stdio.h>      
            将头文件stdio.h展开到代码中

            #if 
            #elif
            #else
            #endif
            #ifndef
            #ifdef 
            根据条件编译规则将符合条件的代码加入到编译中,不符合条件的代码从编译中去除

            #define
            宏完成替换

            gcc -E hello.c -o hello.i  

         2.编译: 
            将C语言代码编译成汇编代码

            gcc -S hello.c -o hello.s 

        3.汇编:
            将汇编代码编译成二进制代码

            gcc -c hello.c -o hello.o 

        4.链接:
            将二进制代码链接成为可执行程序  

            gcc hello.c -o hello 

3. 程序错误:


        1.语法错误 
            1.每次编译代码都寻找第一个错误并修改,直到错误完全解决为止
            2.错误分为:error、warnning
                error:无法生成可执行程序
                warning:可以生成可执行程序,但程序中有可能出现错误

        2.逻辑错误
            1.加入打印解决问题
            2.gdb调试器 

                        gdb调试器:
                            1.编译代码时必须加-g选项,允许GDB调试 
                                        gcc filename.c -g  
                            2.使用gdb调试代码
                                        gdb ./a.out 
                            3.输入命令完成GDB调试
                                        l                   查看代码
                                        b 函数名/行号        设置断点
                                        r                   运行代码        
                                        n                   单步执行
                                        c                   继续执行到下一个断点
                                        p 变量名            查看变量值
                                        s                   进入函数内部调试
                                        q                   退出

                                查看代码 -> 设置断点 -> 运行代码 -> 单步执行

4.执行代码 
   

         ./a.out 

     

  • 18
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值