• C语言回顾-函数和位运算


    1.函数的概述

    功能独立的代码块

    C语言由若干函数组成

    1)从定义分,库函数和用户定义函数两种

    2)从返回值分,有返回值函数和无返回值函数

    3)从参数分,无参函数和有参函数

    2.形参和实参

    1)形参定义后,并不会立即分配存储空间,在函数调用的时候才会真正的分配存储空间

    2)如果是多个参数,可以用逗号分隔

    3)形参的类型可以不相同

    4)函数内部不能定义与形参同名的变量 

    3.实参和形参的参数传递

    1)调用函数的时候,实参的值时一个已经确定的值

    2)把实参的值,赋值给形参

    3)实参和形参的个数、类型要一致

    如果类型不一致,会造成精度丢失

    4)形参的值在函数内部可以被修改,但是不会影响主调函数中实参的数据

    4.函数先声明再调用

    5.递归函数,放在栈中,所以很占用内存空间

    6.命令行:

    cc -c xxx.c//编译

    cc xxx.o//链接

    ./a.out//执行

    7.文件包含指令#include,是一个预处理指令,作用是把要包含的文件的内容拷贝到当前书写include的地方

    <>表示包含系统的文件

    ""表示包含自己的文件

    include命令的搜索顺序:当前目录->子目录->编译器目录(

    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include

    )->mac系统的include目录,如果没有的话,报错

    如果修改了编译器的include中的自定义文件后,运行后发现没用改变

    1)需要clean项目

    2)手动清理

    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include目录下的文件

    8.C语言模块化编程

    9.进制

    数位:从右到左依次是0、1、2、3。。。

    基数:几进制基数就是几

    位权:数码*基数^数位,如013,第1位的位权是1*8^1=8

    位权相加就是把数转换成十进制后的值

    10进制-》2进制:除2取余,结果倒序

    2进制-》10进制:位权相加

    2进制-》16进制:整数部分从右到左,4合一;小数部分,从左向右,4合一

    16进制-》2进制:1分4

    机器数:二进制数最高位代表符号

    真值:机器数不带符号叫真值

    原码(-128---》127)、反码、补码(-128在计算机中是1000 0000 0000 0000 0000 0000 0000 0000)

    正数的原码、反码、补码相同

    负数的反码是符号位不变,其余各位取反,补码是反码的基础上+1

    计算机中存的是补码

    10.位运算(不考虑符号位)

    &按位与

    |按位或

    ~按位取反,得到补码(如果是负的再取反加一转成原码)

    ^按位异或,相同为0,不同为1

    <<左移,所有位全部向左移动n位,高位丢弃,低位补0;向左移n位,相当与乘以2的n次方,负数左移会变正数

    >>右移,移出去的部分舍弃,高位要补符号位;向右移n位,相当与除以2的n次方,结果是整数部分,右移不会改变正负性

    11.内存分配地址由高到低分配

    %p输出变量的地址

     

  • 相关阅读:
    Mac保留Python2安装Python3(Anaconda3)
    Mybatis Plugin 以及Druid Filer 改写SQL
    Jackson替换fastjson
    Java单元测试 Http Server Mock框架选型
    应用中有多个Spring Property PlaceHolder导致@Value只能获取到默认值
    RabbitMQ Policy的使用
    Collectors.toMap不允许Null Value导致NPE
    php 删除标签
    php 替换标签
    jquery拼接html
  • 原文地址:https://www.cnblogs.com/fanglove/p/4932333.html
Copyright © 2020-2023  润新知