黑马程序员-----c语言基础与重点第一篇——C知识基础

本文介绍了C语言的基础特点,包括简洁紧凑的语法、丰富的运算符和数据类型等。同时,文章强调了C语言的重难点,如运算符、进制转换、数组、循环、函数、指针、内存管理和多文件开发等概念。此外,还提到了C语言的注释、标识符规则以及数据类型的分类。
摘要由CSDN通过智能技术生成

------- android培训java培训IOS培训.Net培训、期待与您交流! ----------

    本系列博客主要描述c语言基础与OC语言基础。大家可随时沟通交流。根据学习做一些笔记,也方便学习和复习巩固。

    首先先介绍一下C语言的特点:
(1)语言简洁、紧凑,使用方便、灵活;
(2)运算符丰富;
(3)数据类型丰富;
(4)具有结构化的控制语句;
(5)语法限制不太严格,程序设计自由度大;
(6)C语言运行直接访问物理地址,能进行位(bit)操作,能实现汇编语言的大部分功能,可以直接对硬件进行操作;
(7)用C语言编写的程序可移植性好;
(8)生成目标代码质量高,程序执行效率高。
    C语言中得重难点:
1.运算符:自增、自减运算符
2.进制:进制转换、原码、反码和补码
3.数组:一维数组、二维、多维数组
4.循环:多重循环的嵌套、排序、查找
5.函数:递归函数、吊用
6.指针:一级指针、多级指针、指针和数组、函数、结构体之间的关系
7.内存管理:c语言的内存管理问题、内存泄露、野指针
8.有参宏及条件编译
9.多文件开发:多文件编译、多文件开发

C语言常见注释符号:
//单行注释
/*多行注释*/

标识符的划分:关键字,预定义标识符和用户标识符

规则:1.只能由字母,数字,下划线或$组成;

           2.不能以数字开头;

           3.不能与关键字重名;

           4.严格区分大小写;


数据类型分为:基本类型,构造类型,指针类型,空类型(void),定义类型(typedef)。

基本类型:1.整型(1)短整型 short  ;(2)整型 int;(3)长整型 long;

                2.字符型 char;

                3.实数型(1)单精度  float;(2)双精度  double;

构造类型:1.数组;2.结构体(struct);3.共用型(union);4.枚举类型(enum);


10进制:15  8进制以0开头:045

2进制以0b(0B)开头:0b00000001

16进制以0x开头:0x438fa

单精度2.3f (4个字节)双精度2.3(计算机默认以双精度代表一个小数)

字符:‘a',’*‘,’&‘;转义字符’\n‘;’\r‘,’\t‘,’\\‘;

字符串:“abc”


32个关键字(auto 局部变量(自动储存);break无条件退出程序最内层循环;case   switch语句中选择项;char单字节整型数据;const定义不可更改的常量值;
continue中断本次循环,并转向下一次循环;default switch语句中的默认选择项;do  用于构成do.....while循环语句;double定义双精度浮点型数据;
else构成if.....else选择程序结构;enum枚举;extern在其它程序模块中说明了全局变量;float定义单精度浮点型数据;for构成for循环语句;goto构成goto转移结构;
if构成if....else选择结构;int基本整型数据;long长整型数据;registerCPU内部寄存的变量;return用于返回函数的返回值;short短整型数据;signed有符号数;
sizoef计算表达式或数据类型的占用字节数;static定义静态变量struct定义结构类型数据;switch构成switch选择结构;typedef重新定义数据类型;
union联合类型数据;unsigned定义无符号数据;void定义无类型数据;volatile该变量在程序中执行中可被隐含地改变;while用于构成do...while或while循环结构;)

数据类型占用存储长度       16         32        64

                               void         2           4          8

                              short        2           2           2

                               char        1           1           1

                               int            2           4           4

                               float         4           4           4

                              double      8           8           8

                               long          4          4            8

转义字符:\n换行  %d10进制 %f实数  %c字符  %s字符串  %0八进制  %x十六进制  

                 %p地址  %lf双精度  %md设置m域宽  \t空白  注意转义字符\\=\

运算符连接操作数

分类:算术,关系,逻辑,按位运算符

%求余运算符  不能应用于float与double 只能在整型中使用

强制类型转换是临时转换不会改变原值


int a=3                    ++a            a++ 

表达式中a值           4                 3

执行后变量a值        4                4

优先级

i++,先看i,再让i的值加一(表达式值为i)

++i     先让I的值加一(表达式的值为i+1)


sizeof为单目运算符          不是一个函数

sizeof(常量/变量)          求数据类型表达式所占字节数

char占一个字节                sizeof在用常量与变量可以省括号,但用在数据类型上不可以省


关系运算符  !=    >        <       ==    >=       <=  返回值为0或1

逻辑运算符   &&           ||           !    

&&    一假则假      同真为真

||        一真为真     同假为假

!      真变假        假变真

短路问题

A&&B       A假(0)  B不执行

A||B           A真(1) B不执行

三目运算符     真或假          1                     0

       int  a=表达式1  ?表达式2    :   表达式3


程序结构:1.顺序结构;2.分支结构;3.循环结构

if语句      if(表达式){        }

if...else语句    if(表达式){    }else{     }

switch分支语句

switch(表达式){

                        case 常量表达式1:语句1;break;

                         .......

                        case 常量表达式n:语句n;break;

                        default:语句n+1;

}

while语句与do ...while语句

while(表达式){   }

do { 语句 }while(表达式)

区别 条件不合时候,do...while会执行一次 while是先判断再执行

for语句

for(表达式1;表达式2;表达式3){   }

初始化语句会被执行一次,当条件不符合时,循环结束。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值