美文网首页
2 C语言基础复习

2 C语言基础复习

作者: 游戏开发程序员 | 来源:发表于2023-04-15 11:42 被阅读0次

    参考 C语言程序设计 第2版

    导言:

    • 输出中的转义字符 \n \t \b \ "
    • 变量先定义+赋初值再使用为佳: in t i = 0;
    • int 和 float的长度取决于机器16\32\64位机器
    • 整数除法会舍位,所有小数都舍弃。
    • %3d %6d 右对齐3位和6位。
    • 整数和浮点数运算会转为浮点数,浮点数加.0f便于阅读
    • %3.1f 至少占3个字符,小数点1位。
    • %o 八进制 %x 十六进制 %c 字符 %ld long整形
    • EOF end of File 文件结束标识符
    • "abc"为字符串常量 'a'为字符常量
    • int power(int, int); 函数声明,参数名可不写。
    • 函数定义中的参数叫形式参数,调用中传递的叫实际参数。
    • 传值调用 传引用调用。
    • 外部变量(全局变量) 自动变量(局部变量)
    • 声明Declaration 只说明变量的性质
    • 定义Define 创建变量或分配存储单元

    第二章:类型、运算符和表达式
    所有整形都有signed 和 unsigned

    外部变量定义前使用,或者不在同个源文件中,需要使用extern声明。
    extern声明 不需要声明数组的长度
    static会一直占据内存,并且只在本文件内可见

    C预处理器

    include #define

    *和& 优先级比 + * 算术运算符高。return *p+1 先取p值再加1返回。

    char中若保存非字符数据,请指定singned或unsigned
    ++--只能用于变量

    逗号分割的表达式,从左到右顺序求值。

    数组第一维下标可以不指定大小,其他的必须指定

    argv[] 0为启动的程序名称。至少size为1.
    argv[argc-1]为最后一个可选参数,argv[argc]为空指针。

    printf内容也可以是表达式。谨慎使用
    printf((argc > 1) ? "%s 1" : "%s 2", str);

    排序算法:
    判断任何两个对象之间次序的比较排序;
    颠倒对象次序的交换操作;
    比较和交换对象的排序算法。

    优先级最高:. [] () ->

    alloc分配不保证对齐
    malloc分配保证对齐
    char* s = "123";
    char* p = (char*)malloc(strlen(s) + 1); // +1是为了再结尾加上字符\0
    strcpy(p, s);

    typedef创建新的数据类型名

    联合体:union
    是一个结构,保存类型长度最长的,并且和具体实现有关。

    相关文章

      网友评论

          本文标题:2 C语言基础复习

          本文链接:https://www.haomeiwen.com/subject/urhnoktx.html