C语言学习No.1


【知识点1】基本的linux命令操作,操作通过命令来实现

1、 cd:切换目录 切换到某一个文件夹里面去


    首先我们要建立一个共享目录,我们写代码更希望用软件在windows下面写
    但是最后我们的编译和运行都需要在linux里面,因此我们就需要让windows和linux    
    之间有一个交流->共享文件夹->这个文件夹里面的东西在windows里面可以操作
    在linux里面也可以操作
        ① player -> 管理 -> 虚拟机设置 -> 选项 -> 共享文件夹 -> 选择总是启用
            -> (将里面的文件夹先移除) ->添加->下一步->浏览->找一个自己喜欢的文件夹
            或者新建一个(不要在c盘里面操作) ->尽量用英文(文件夹的名字中间尽量不要有空格)
            -> 下一步完成确定就可以了
                
        ②切换到共享目录
          cd /mnt/hgfs/D 在打字的过程中可以按table键自动补齐
    


2、 我们需要在终端里面操作(黑色的那个框,可以ctrl+alt+t三个组合键打开一个终端)


    每一个文件夹里面隐藏两个特殊的文件夹
        .    当前目录
        ..  上一级目录
            cd .
            cd ..回到上一级
            
    相对路径与绝对路径:
        绝对路径:我们的linux是树形结构 有唯一的一个根 / 表示
            从/出发的都是绝对路径
    
        相对路径是从. ..出发的我们叫相对路径
            cd ./22248/1.9数据类型/code -> 我们可以省略./
            cd 22248/1.9数据类型/code   //也可以起到同样的效果
                
            cd ../22248/1.9数据类型/code (这个我还是不太会用)
            
ls:列举当前目录下面的所有东西
    ls
    ls -a隐藏的也列举
    ls -l以列表列举
    ls -al所有的以列表列举
            

gcc:常用的编译器(大多数使用这个编译器)
    gcc main.c -o hehe //这种方式可以自己命名
    gcc main.c ->默认生成a.out
    找到这个可执行文件即可执行
    ./a.out 回车即可执行
    
小总结:    
    1 切换到共享目录
    2 写代码  ->可以用自己喜欢的写代码的软件
    3 gcc编译这个代码
    4 运行生成的可执行文件
           


【知识点2】数据类型:

1、问题:


    计算机只是人类设计出来解决问题的一个工具,实际上是一个很简单的概念:
        计算机只会计算,不会思考
        因此你让计算机怎么做它就怎么做,如果计算机做错了,你只能找你自己的原因
    计算机怎么去做计算:在计算机里面有一个寄存器 -- 加法器
        计算机里面的一切计算都是通过这个加法器来实现的
        因此:计算机在计算的时候就必须需要两个对象(数据)、
            至少要给两个数据才能去做加法
            我们人类做加法也需要数据 -- 这个数据是保存在大脑里面的
            计算机也是一样,它想做加法,它就要必须要将所需要的数据保存下来
            而保存数据的地方在计算机里面 -> 内存 ->计算机保存数据的地方
            程序操作计算机实际上就是操作内存 

    计算机只能操作内存,那么它就必须要知道内存是什么
    换一句话说 -> 计算机必须知道这个数据有多大
        内存 -> 内存条(8G)
            我们操作的这个数据保存的地方就是这个内存条
            如果我们不指定大小 -> 计算机就会将整个内存条里面的东西拿出来
            你拿了没有问题,但是系统不允许
            
            举例:100 1000 10000//数字
            不同的数据占用的空间不一样
            因此想要计算机运行,第一步就必须要让计算机知道你的数据的大小


            
2、c语言里面是如何去确定这个数据的大小呢?


    "定义"--也就是c语言想要运行,第一步就必须要确定数据的大小
        而确定数据的大小的过程我们就叫定义,因此c语言也叫"定义性语言"

c语言里面的数据类型:
    (1) 基本的数据类型:c语言已经给我们定义好了的,我们只需要拿过来用就可以了
    
        1 整型     ->保存整数
            (signed)char/unsigned char   字符型
                    占用 1byte -> 8bit -> 计算机里面的最小存储单位是字节//只有字节才有地址
            (signed)short/unsigned short 短整形
                    占用 2byte -> 16bit
            (signed)int/unsigned int     整形
                    占用 4byte -> 32bit-> int一般为计算机里面最自然的长度
            (signed)long/unsigned long   长整形
                    32位机4byte
                    64位机8byte
            (signed)long long/unsigned long    long 长整形
                    8byte
            在现实中有那种特别大的数 -> 大数据
                这种大数据我们一般的处理方式是字符串 "......"
            
        2 浮点型 ->保存小数
            float 单精度 4byte
                
            double双精度 8byte
        
            long double 长精度
            
            eg:
                float a;
                a = 3.15
            
    (2) 构造类型:c语言里面允许程序员自己定义类型
        数组  int a[3]; -> int[3] a;
                数据类型 变量名;
                
        结构体 -> 描述一个物体的多重属性
                struct hehe
                {
                    int a;
                    char * p;
                    char c;
                };
        联合体
        枚举

    (3) 指针类型(后续有很长的时间去专门搞这个玩意儿)
        *
        int * p;

    (4) 空类型(void)
        c语言里面只有三个地方会使用这个void
            1 void * 万能指针,什么指针都可以接收
            2 void用作函数的返回值,表示此函数没有返回值
                void function()
                {
                    .......
                    return;//这个return后面没有值
                }
                注意:
                    没有返回值不代表不返回
            3 void用作函数的参数,表示此函数没有参数
                void function(void)
                {
                
                }
                高级一点的编译器已经不需要你写函数参数里面的void
                但是在低级编译器里面如果你不写会有警告

    整个数据类型定义基本就完了
    接下来我们就要通过这些数据类型去定义(保存)数据
    c语言里面的,有两种基本的数据对象:常量,变量
    


【知识点3】常量

    1 常量:不能改变意思的这种数据对象



        比如有一个数8:你能改变8的意思吗?
            你是不能改变8本身自己的意思的
            8只能代表8的意思,因此这个8就是常量
            
                1 整形常量:代表一个不能改变意思的整数
                    8进制:以0开头的我们是8进制
                        0123
                        01237
                        01238是错的  到不了8的
                        逢8进1
                    8进制        二进制
          

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值