/数据类型及占用字节
 char 
  1个字节{-128~127}
 int  
  2、4个字节,取决于平台是16位还是32位机子{-65536~65535}
 short int
  2个字节{-32768~32767}
 long int
  4个字节{-2147483648~21474833647}
 float 
  4个字节{-3.4*10^-38~3.4*10^38}
 double 
  8个字节{-1.7*10-308~1.7*10^308}
 long double 
  8个字节{1.7*10^-308~1.7*10^308}
  
/数据类型强制转换时,由高阶向低阶转换可能导致数据丢失;

/前缀自增与后缀自增的区别在于:前缀先自增再赋值,后缀先赋值再自增;

/运算优先级口诀:
 括号成员第一;        //括号运算符[]() 成员运算符.  -> 
 全体单目第二;        //所有的单目运算符比如!、~、++、 --、 +(正)、 -(负) 、指针运算*、&
 乘除余三,加减四;     //这个"余"是指取余运算即%
 移位五,关系六;      //移位运算符:<< >> ,关系:> < >= <= 等
 等于(与)不等排第七;  //即== 和!=
 位与异或和位或;      //这几个都是位运算: 位与(&)异或(^)位或(|)   
 "三分天下"八九十; 
 逻辑或跟与;             //逻辑运算符:|| 和 &&
 十二和十一;             //注意顺序:优先级(||)  底于 优先级(&&)
 条件高于赋值,         //三目运算符优先级排到13 位只比赋值运算符和","高
 逗号运算级最低!      //逗号运算符优先级最低
  
/字符(串)的输出和输入
   /putchar和getchar一次只能输出和接收一个字符;
   /puts和gets用来输出和接收字符串;
 
/printf附加符号
   /+、- 向右、向左对齐
   /m.n m=数据最小宽度,n=取n个字符或小数
 
/for语句中,表达式2为空 || 表达式3为空 || 表达式全为空,则说明是无限循环

/字符串操作
   /字符串复制
   /strcpy(目的字符数组,源字符数组)
   /目的字符数组的长度必须足够长,且不写成数组名形式
   /不能用赋值语句将一个字符串常量或字符数组赋值给一个字符数组
   /strncpy(str2,s,i);将数组s的前i个字符复制到数组str2中
  
 /字符串连接
  /strcat(目的字符数组,源字符数组)
    /目的字符数组的长度必须足够长
 
 /字符串比较
    /strcmp(目的字符数组,源字符数组)
    /返回值:
     0  —— 字符串1 = 字符串2
     正数 —— 字符串1 > 字符串2
     负数 —— 字符串1 < 字符串2
 
 /字符串大小写转换
    /小写转大写:strupr(数组)
    /大写转小写:strlwr(数组)

/字符串长度
    /strlen(数组) [不含字符串结束标志'\0s']
  
/函数
   /内部函数(静态函数):static
      \使函数只局限在函数所在的源文件中,如果在不同的源文\
      \件中有相同的内部函数,则这些同名的函数是互不干扰的
   /外部函数:extern
       \可以被其他源文件调用的函数,即外部函数是共享的

/绝对值
   /abs();  求整数的绝对值
   /labs(); 求长整数的绝对值
   /fabs(); 求浮点数的绝对值

/检测参数是否字母:isalpha()
   /是,返回非零值
   /否,返回零

/检测参数是否数字:isdigit()
   /是,返回非零值
   /否,返回零
 
/检测数字或字母:isalnum()
   /是,返回非零值
   /否,返回零
 
/变量存储类型
   /存储空间:程序区、静态存储区、动态存储区
    /程序区:  放置用户要执行的程序段
    /静态存储区:放置静态存储的变量,全局变量都保存在静态存储区,因此,全局变量从程序执行时开始分配存储单元,直到程序终止时,才释放所占的存储单元
    /动态存储区:放置动态存储的变量,如与堆栈操作相关的数据以及局部变量,因此,如果一个函数被调用了两次,其中的变量存储空间可能为不同的地址

  /自动变量:auto,动态分配存储单元,用完就释放,再次调用时重新计算
   /静态变量:static,静态分配存储单元,用完不释放,再次调用时在上一次的基础上继续计算

  /寄存器变量register(属于动态存储方式)
      /CPU访问寄存器的速度要快于内存,因此register用于需要频繁使用的变量
      /但由于寄存器数量有限,当计算机的寄存器不够用时,变量是作为自动变量处理的

/外部变量:extern(属于静态存储方式)
    /就是全局变量
    /但是可以被其他源文件调用
/静态外部变量:static
    /也是全局变量
    /但是只能被当前源文件使用

C_Learning (1)的更多相关文章

  1. C_Learning (4)

    / 预处理命令 / 宏定义 / 一般形式:#define 宏名 字符串 # 表示这是一条预处理命令 宏名是一个标识符,必须符合C语言标识符的规定 字符串可以是常数.表达式.格式化字符串等 / 注意: ...

  2. C_Learning(3)

    / 结构体 / 声明结构体类型的一般形式: struct 结构体名[--表示的是这个结构体的类型] {    成员列表 }; [不要漏掉这个";"] / 声明结构可以放在main函 ...

  3. C_Learning(2)

    /指针 /指针变量指向一个变量的地址 /给指针变量赋的值只能是地址 /指针变量的赋值 /{ int a; int *p; p=&a; } or { int a; int *p=&a; ...

  4. 复习C语言

    今天突然有感觉复习下C语言了,发现已经好久没有用过C编程了,话说最近都没有编过程序了都,趁现在还有点时间,好好学习下C了.话不多说上题目 请定义一个宏,比较两个数a.b的大小,不能使用大于.小于.if ...

  5. 数据结构(C实现)------- 最小生成树之Prim算法

    [本文是自己学习所做笔记.欢迎转载.但请注明出处:http://blog.csdn.net/jesson20121020] 算法描写叙述 假设连通图是一个网,则称该网中全部生成树中权值总和最小的生成树 ...

随机推荐

  1. LightOj 1030 - Discovering Gold(dp+数学期望)

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1030 题意:在一个1*n 的格子里,每个格子都有相应的金币数,走到相应格子的话,就会得 ...

  2. Area---poj1265(皮克定理+多边形求面积)

    题目链接:http://poj.org/problem?id=1265 题意是:有一个机器人在矩形网格中行走,起始点是(0,0),每次移动(dx,dy)的偏移量,已知,机器人走的图形是一个多边形,求这 ...

  3. 第一课 JDK环境变量配置

    第一步:下载,并解压到D:/JDK 第二步:环境变量配置 右键我的电脑->属性->高级->环境变量->系统变量(注意:是下面的系统变量,不是上面的用户变量) 新建变量名 JAV ...

  4. (3.4)mysql基础深入——mysql.server启动脚本源码阅读与分析

    (3.4)mysql基础深入——mysql.server启动脚本源码阅读与分析 my.server主要分为3大部分 [1]变量初始化部分 [2]函数声明部分 [3]具体执行部分 #!/bin/sh # ...

  5. sql server维护解决方案(备份、检查完整性、索引碎片整理)

    请务必看原文 原文:https://ola.hallengren.com/frequently-asked-questions.html 经常问的问题 入门 如何开始使用SQL Server维护解决方 ...

  6. python 基础 特殊符号的使用

    python语句中的一些基本规则和特殊符号: 1.井号# 表示之后的字符为python注释 Python注释语句从#号字符开始,注释可以在语句的任何一个地方开始,解释器会忽略掉该行#号之后的所有内容 ...

  7. 2018中国(深圳)IT领袖峰会马化腾演讲全文《数字中国的机遇与探索》

    我们今天大会的主题是数字中国,也佩服我们吴鹰主席在十年前就想到发展的趋势,这么早就把我们联合会取名数字中国.昨天有一个闭门会议,有相当大的篇幅大家都谈了科技.谈创新,大家觉得科技的威力和优势越来越明显 ...

  8. PythonWeb 开发记录(一)

    安装Django Sudo apt-get install python-django 验证安装Django成功 创建Django应用程式的方式 创建的是解决方案 ,然后创建的是Hi 模块 运行项目: ...

  9. HTML5-CSS3-JavaScript(2)

    我们就从HTML5的基础总结起.希望可以提高自身的基础. HTML5 新增的通用属性 1. contentEditable 属性 HTML5 为大部分HTML元素都增加了contentEditable ...

  10. git pull报错,error: cannot lock ref导致拉流失败

    使用git命令删除相应refs文件,git update-ref -d refs/remotes/XXX,或者手动删除文件 简单粗暴强行git pull,执行git pull -p 原文:https: ...