美文网首页
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