• C语言基础知识入门


    目录

    一:C语言结构

    二:C标准库

    三:C程序执行过程 编写过程

    四:数据类型

    五:变量在内存中的存储

    六:C基本数据类型


    一:C语言结构

    1.1  C语言允许分割代码和数据

    可以使用具有局部(临时)变量的函数或代码块来实现这种特性

    代码块(程序块)是逻辑上连接在一起的一组程序语句,可以当作一个单元来使用

    1. int Sum(int a)
    2. {
    3. int iSum = 0;
    4. int i = 1;
    5. while(i <= a)
    6. {
    7. iSum = iSum + i;
    8. i++;
    9. }
    10. return iSum;
    11. }

    1.2  由一个或者多个.C文件构成

    每一个.C文件可以由预处理命令、全局变量声明、函数和注释组成

    1. #include /*预处理命令*/
    2. int count=0; /*全局变量声明*/
    3. int main(void) /*函数*/
    4. {
    5. printf("Hello World\n");
    6. return 0;
    7. }
    '
    运行

    1.3  C程序被分割成一个个的函数,有且仅有一个main函数

    程序执行时先将控制权传递给main函数(主函数)

    函数由函数的首部(函数第一行)和函数体(一对大括号中的内容)组成

    1. #include /*预处理命令*/
    2. int count=0; /*全局变量声明*/
    3. int main(void) /*函数*/
    4. {
    5. printf("Hello World\n");
    6. return 0;
    7. }
    '
    运行

    1.4  函数的首部:类型、名称、参数类型和参数名,圆括号内参数有无都可以,但括号不能省略

    函数定义后面接一个大括号{}叫分隔符

    { 代表代码块开始,} 代表结束

    1. /*函数名:int max(int a,int b)
    2. 函数功能:求最大值
    3. 函数参数:
    4. 函数返回值:*/
    5. int max(int a,int b)
    6. {
    7. if(a>b)
    8. return a;
    9. else
    10. return b;
    11. }

    1.5 函数由声明部分和执行部分组成

    C语言使用分号;表示语句结束

    不识别回车、空格或制表符(这些符号使代码美观)

    建议一行写一条语句,一条语句可以跨多行

    1. #include /*预处理命令*/
    2. int max(int a,int b); /*函数原形声明*/
    3. int main(void){ /*函数*/
    4. int num1,num2,result;
    5. printf(“请输入两个整数:”);
    6. scanf("%d%d",&num1,&num2);
    7. result=max(num1,num2);
    8. printf(“max=%d\n“,result);
    9. return 0;
    10. }

    1.6 注释

    注释用于描述特定的命令、函数或程序,增强程序的可读性

    多行注释用/*开始,用*/结束(标准C语言)

    一行注释用//标出

    二:C标准库

    C编译器都提供有标准函数库

    DOS下的C编译器Turbo C 2.0大约有440个函数

    BC++2.0大约有500多个函数

    VC++除了标准的C运行库及C语言扩展外,还有600多个Windows API,以及VC++中的类库(MFC)

    Linux下的C也有很多扩展及系统函数

    程序员编写的函数可以放在库中,然后在需要时使用

    有些编译器允许将函数放在标准库中

    有些编译器需要创建单独的库

    三:C程序执行过程 编写过程

    四:数据类型

    4.1 变量

    程序要为每一项数据分配内存,通常使用变量来存储数据。使用变量可以引用存储在内存中的数据,并随时根据需要显示数据或执行数据操纵。

    需要多少内存

    数据被存储在哪里

    操作系统负责集中变量在内存中的地址

    要引用内存空间中的值,只需指定变量名

    4.2 常量

    常量就是一个保持不变的值

    示例
              9    数字/整型常量
    9.3  数字/浮点常量
    “NAME”    字符串常量
    ‘A’    字符常量
    符号常量

    #define NUM 100

    提高代码的可读性,还可以做到一改全改

    使用const关键字

                     const int  iNum= 100; 

    4.3 C标识符

    变量、函数、标签和其他各种用户定义的对象的名称都称为标识符
    正确的标识符名称

        A  a rena、s_count、marks40、class_one

    不正确的标识符示例

        1sttest、oh!god、start... end

    标识符的长度可以是任何合适的数值,但是各种编译器能够识别的变量中的字符数目有所不同
    C 语言中的标识符区分大小写

    4.4 C关键字

    在一个特定语言的上下文中有特殊意义的单词。是标识符的一个特殊的集合。在C语言中有预先定义好的特殊意义。不能用于其他任何目的
    所有的数据类型都是保留的关键字
    所有的关键字小写
    C语言的关键字共32个:

    4.5 C系统标识符

    系统内置的标识符指的是系统函数名称、系统定义的结构体名称、系统定义的符号常量名称等
    例如:printf、FILE、date、RED等
    以上各种标识符不要用于用户定义的标识符上,防止发生不必要的错误

    4.6 C数据类型

    4.7 数据类型的使用

    数据类型描述了变量中将存放的数据的种类
    数据类型位于变量名的前面
    例如:数据类型 int 将位于变量名 varName 的前面
    变量声明必须放在变量使用之前(先定义后使用)
    一般放在函数体的开头部分,可执行代码的前面
    变量声明也可以放在代码块的前面

    4.8 C变量的赋值

    程序中常常需要对一些变量预先设定初始值
    定义时初始化变量

       Datatype variablename = value;

      例如:int num1,num2 = 12;

    定义后初始化变量

       variablename = value;

      例如:int num;

                      num = 12;

    五:变量在内存中的存储

    1. void main()
    2. {
    3. int nNum = 300;
    4. //0x0000012C
    5. char cStr = ‘A’;
    6. //0x41
    7. char cCh ;
    8. printf(“%d\n”, nNum);
    9. printf(“%c\n”,cStr);
    10. printf(“%c\n”,cCh);
    11. }

    六:C基本数据类型

    6.1 int类型

    6.2 float类型

    6.3 double类型

    6.4 char类型

    6.5 ASCII码表

    6.6 void类型

      6.7 派生数据类型

    6.8 数据输出格式

    6.9 数据类型示例

    1. #include
    2. int main ()
    3. {
    4. char sex = 'F'; /*用M和F代表性别*/
    5. float length = 13.5f; /*声明length,长度可能带有小数位*/
    6. double area; /*声明area */
    7. double pay; /*money有角和分*/
    8. short int age = 89; /*人类的年龄现阶段不可能超过150*/
    9. return 0;
    10. }
    '
    运行

    选择数据类型时首先考虑变量用来存放什么类型值,

    然后再根据存放值的最大值和最小值,进一步选择适当的类型和类型的修饰符 

  • 相关阅读:
    【C语言刷LeetCode】1592. 重新排列单词间的空格(E)
    二叉数与广义表互相转换
    C++ - 类型转换 - static_cast - reinterpret_cast - const_cast - dynamic_cast
    用DIV+CSS技术设计的体育主题网站(足球介绍)
    ARM汇编学习录 3 - 调试/编译
    Tensorflow 模型保存、节点修改以及Serving 图优化
    RocketMQ源码(15)—消费者DefaultMQPushConsumer启动主要流程源码
    NC14 按之字形顺序打印二叉树
    计算机系统(16)----- 调度算法(2)
    【liuyubobobo-玩转Leetcode算法面试】【00】课程概述
  • 原文地址:https://blog.csdn.net/m0_56051805/article/details/127095687