一、什么是C语言?

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易
的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程
语言。尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制
定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。 [1] 目前2011年12月8
日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标
准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉
字编程。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。
其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

二、我的第一个C语言程序

#include <stdio.h>
int main()
{
    printf("hello C language\n");
    printf("I Love You\n");
    return 0;
}
//注意:
//main函数是程序的入口
//一个工程中main函数有且仅有一个

注意:
在C语言中,main函数是程序的入口,一个工程中main函数有且仅有一个

二、C语言的数据类型

2.1数据类型的种类

char           字符数据类型(1字节)
short          短整型(2字节)
int              整形(4字节)
long           长整型(4字节)
long long   更长的整形(8字节)
float           单精度浮点数(4字节)
double       双精度浮点数(8字节)

注意:使用sizeof就可以计算出每个内置类型的大小了,如下:

#include <stdio.h>
int main()
{
    printf("%d\n", sizeof(char));
    printf("%d\n", sizeof(short));
    printf("%d\n", sizeof(int));
    printf("%d\n", sizeof(long));
    printf("%d\n", sizeof(long long));
    printf("%d\n", sizeof(float));
    printf("%d\n", sizeof(double));
    printf("%d\n", sizeof(long double));
    return 0;
}

2.2数据类型的使用

#include<stdio.h>
int main()
{
    char ch = 'w';
    int weight = 120;
    int salary = 20000;
    return 0;
}

三、变量、常量 

3.1概念


生活中的有些值是不变的(比如:圆周率,性别,身份证号码,血型等等)
有些值是可变的(比如:年龄,体重,薪资)。

不变的值,C语言中用常量的概念来表示,变得值C语言中用变量来表示

3.2定义变量的方法

int main()
{
    int age = 150;
    float weight = 45.5f; 
    char ch = 'w';
    return 0;
}

3.3变量的分类

变量有两种:全局变脸和局部变量

#include <stdio.h>
int global = 2019;//全局变量
int main()
{
    int local = 2018;//局部变量
    //下面定义的global会不会有问题?
    int global = 2020;//局部变量
    printf("global = %d\n", global);
    return 0;
}

总结:

上面的局部变量global变量的定义其实没有什么问题的! 当局部变量和全局变量同名的时候,局部变量优先使用。

3.4变量的使用

#include <stdio.h>
int main()
{
    int num1 = 0;
    int num2 = 0;
    int sum = 0;
    printf("输入两个操作数:>");
    scanf("%d %d", &num1, &num2);
    sum = num1 + num2;
    printf("sum = %d\n", sum);
    return 0;
}

3.5变量的作用域和生命周期 


(1)作用域
作用域(scope),程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效/可用
的,而限定这个名字的可用性的代码范围就是这个名字的作用域。

1. 局部变量的作用域是变量所在的局部范围。
2. 全局变量的作用域是整个工程。

(2)生命周期
变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
1. 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
2. 全局变量的生命周期是:整个程序的生命周期。

3.6常量

C语言中的常量和变量的定义的形式有所差异。
C语言中的常量分为以下以下几种:
 (1)字面常量
 (2)const 修饰的常变量
 (3)#define 定义的标识符常量
 (4)枚举常量

#include <stdio.h>
//举例
enum Sex
{
 MALE,
 FEMALE,
 SECRET
};
//括号中的MALE,FEMALE,SECRET是枚举常量
int main()
{
    3.14;//字面常量
    1000;//字面常量
    const float pai = 3.14f;   //const 修饰的常量
    pai = 5.14;//ok?
 #define MAX 100            //#define的标识符常量    
    return 0;
}

四、字符串+转义字符+注释 

4.1字符串

"I Love You\n"

这种由双引号(Double Quote)引起来的一串字符称为字符串字面值(String Literal),或者简称字符串。
注意:字符串的结束标志是一个 \0 的转义字符。在计算字符串长度的时候 \0 是结束标志,不算作字符串内容。

#include <stdio.h>
//下面代码,打印结果是什么?为什么?(突出'\0'的重要性)
int main()
{
    char arr1[] = "bit";
    char arr2[] = {'L', 'O', 'V'};
    char arr3[] = {'L', 'O', 'V', '\0'};
    printf("%s\n", arr1);
    printf("%s\n", arr2);
    printf("%s\n", arr3);
    return 0;
}

4.2转义字符

假如我们要在屏幕上打印一个目录: c:\code\test.cpp
 

#include <stdio.h>
int main()
{
 printf("c:\code\test.cpp\n");
    return 0;
}

实际上程序运行的结果是这样的:

这里就不得不提一下转义字符了。转义字符顾名思义就是转变意思。

以下是一些常见的转义字符:

#include <stdio.h>
int main()
{
    //1:在屏幕上打印一个单引号'
     printf("%c\n", '\'');
    //2:在屏幕上打印一个字符串,字符串的内容是一个双引号“
    printf("%s\n", "\"");
    return 0;
}

下面程序的输出结果是什么:

//程序输出什么?
#include <stdio.h>
int main()
{
    printf("%d\n", strlen("abcdef"));
    printf("%d\n", strlen("c:\test\328\test.c"));
    // \32被解析成一个转义字符
    return 0;
}

4.3注释 


1. 代码中有不需要的代码可以直接删除,也可以注释掉
2. 代码中有些代码比较难懂,可以加一下注释文字

例如:

#include <stdio.h>
int main()
{
    //直接注释前两行:
    /*printf("%d\n", strlen("abcdef"));
    printf("%d\n", strlen("c:\test\328\test.c"));*/

    //风格2:一行一行注释
    cout<<"hello world"<<endl;//输出hello world
    return 0;
}

注释有两种风格:

  1.C语言风格注释:/* xxxx*/

  其缺点在于不能嵌套注释

  2.c++风格注释:// xxxx

   其既可以注释一行也可以注释多行

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐