01.初识C语言1

目录

一、前期准备

二、了解C语言的基础知识

1.什么是C语言?

2.安装VS2019

3.前情

1.创建项目

 2.创建源文件

 3.写代码

4.数据类型

5.变量 

4. 字符串+转义字符+注释​​​​​​​

5.注释


一、前期准备

1.gitee网址(代码托管网站):工作台 - Gitee.com

Git教程 - 廖雪峰的官方网站 (liaoxuefeng.com)

(20条消息) gitee的注册和代码提交_木懿尓的博客-CSDN博客

用法:

1)新建仓库

01.初识C语言1_第1张图片

2)随意勾选

01.初识C语言1_第2张图片 01.初识C语言1_第3张图片

3)网络仓库构建完成

01.初识C语言1_第4张图片

2.所学知识:计算机语言、算法和数据结构、操作系统、计算机网络、项目实战

二、了解C语言的基础知识

01.初识C语言1_第5张图片

1.什么是C语言?

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语 言。

01.初识C语言1_第6张图片

二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制 定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。

2.安装VS2019

------------------------------------------集成开发环境(英文缩写:IDE)-----------------------------------

编辑器

编译器

链接器

调试器

Visual Studio 2022 IDE - 适用于软件开发人员的编程工具 (microsoft.com)

3.前情

1.创建项目

01.初识C语言1_第7张图片

创建后出现此界面即可 

01.初识C语言1_第8张图片

 如果没有出现,视图-解决方案资源管理就可以出现

 01.初识C语言1_第9张图片

 2.创建源文件

.h header头文件

.c 源文件

我们一般把代码放在.c文件中

1)添加源文件

01.初识C语言1_第10张图片

01.初识C语言1_第11张图片

 3.写代码

//解释:
//main函数是程序的入口
//一个工程中main函数有且仅有一个
//一个工程(项目)中可以有多个.c文件,但是多个.c文件中只能有一个main函数
//include 是包含的意识
//下面的代码就是包含stdio.h这个头文件
//stdio - standard input output 标准输入输出头文件

//int - 整型 - 整数
//printf - 打印函数,括号外部不可以用,作用于可行
//专门用来在屏幕上打印数据的
//是C语言标准库中提供的一个库函数

#include 
int main()
{
    printf("hello bit\n");
    printf("he he\n");
    return 0;
}

 常见错误:

#include
int main(){
    printf("my favourite TV is modren family\n");
    printf("you are my baby\n");
    return 0;
}

不同的.c可以调用到主函数

一个项目只能有一个主函数

4.数据类型

//%d - 打印10进制的整数
//%c - 打印字符

//sizeof 是一个操作符,是计算变量的大小的

按一下键盘上的:ctrl+F5(运行)

//字节的换算:

1 B/byte(字节) = 8 bit(比特)(位) 。

1 KB(千字节) = 1024 B/byte(字节) 。

1 MB = 1024 KB 。

1 GB = 1024 MB 。

1TB =1024 GB 。

1 PB = 1024 TB 。

1 EB = 1024 PB。

char        //字符数据类型

short       //短整型

int         //整形

long        //长整型

long long   //更长的整形

float       //单精度浮点数//浮点数--小数点可以浮动,所以可称浮点数

double      //双精度浮点数

sizeof() 是一种内存容量度量函数,功能是返回一个变量或者类型的大小(以字节为单位);在 C 语言中,sizeof() 是一个判断数据类型或者表达式长度的运算符。

返回值:内存所占字节数

计算机常见的单位

bit

byte

KB

MB

GB

TB

PB

#include
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));
	return 0;
}

注意:存在这么多的类型,其实是为了更加丰富的表达生活中的各种值。

类型的使用:

char ch = 'w';

int weight = 120;

int salary = 20000;

5.变量 

生活中的有些值是不变的(比如:圆周率,性别,身份证号码,血型等等)

有些值是可变的(比如:年龄,体重,薪资)。

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

1)定义变量的方法

int age = 150;
float weight = 45.5f;
char ch = 'w';

2)变量的名字

只能由字母(包括大写和小写)、数字和下划线( _ )组成。

不能以数字开头。

长度不能超过63个字符。

变量名中区分大小写的。

变量名不能使用关键字。

3)变量的分类

变量分为:全局变量和局部变量

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

上面的局部变量global变量的定义其实没有什么问题的!

当局部变量和全局变量同名的时候,局部变量优先使用。

4)变量的使用

//这里介绍一下输入:scanf

//输出语句:printf 

//在创建变量的同时给一个初始值

scanf容易出现错误, 需要在底下的提示复制其中的部分

#include 
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;
}

5)变量的作用域和生命周期 

变量必须赋初值

全局变量:可以先声明,后使用

局部变量:必须有初值

作用域
作用域(scope)是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效/可用
的而限定这个名字的可用性的代码范围就是这个名字的作用域。
1. 局部变量的作用域是变量所在的局部范围。(int main()内部)
2. 全局变量的作用域是整个工程。(int main()外部)
生命周期
变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
1. 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
2. 全局变量的生命周期是:整个程序的生命周期。

//全局变量可以在主函数内部调用

//printf()函数只能在函数内部执行

//注意:编译器自上而下

//如果在下面定义了全局变量,而前面用了,需要声明int g_a;最好是在前面写

//同一项目可以跨文件进行使用;

//extern声明外部符号:extern int g_a

6)常量

C语言中的常量和变量的定义的形式有所差异。
C语言中的常量分为以下以下几种:
1.字面常量:1 3 3.3 5 10(直接写出来,就可以看出来)
2.const 修饰的常变量,(不能修改了,但仍被认为是变量)(虽然不能变,但本质上仍然是变量(不能放进数组arr[M])

3.#define 定义的标识符常量(可以放进数组arr[M])

4.枚举常量:0 1 2 3 4 5

//枚举就是一一列举

//血型,性别,三原色(-Red Green Blue)都可以一一列举

EG:

#include 
//举例
enum Sex
{
    MALE,//0
    FEMALE,//1
    SECRET//2
};
//括号中的MALE,FEMALE,SECRET是枚举常量
//枚举分别对应:0,1,2
int main()
{
    const float pai = 3.14f;   //这里的pai是const修饰的常变量
    const float pais=5.14;//是不能直接修改的!
    printf("pais=%d pais=%d\n", pai, pais);
    //#define的标识符常量 演示
#define MAX 100
    printf("max=%d\n", MAX);

    //枚举常量演示
    printf("%d\n", MALE);
    printf("%d\n", FEMALE);
    printf("%d\n", SECRET);
    return 0;
}

4. 字符串+转义字符+注释

//C语言提供了一个库函数,可以计算字符串的长度

//strlen()

//数长度时,\0不算字符长度

//无\0的长度不能得出,因为其后的数是随机的

//字符必须用转义字符引起来

1)字符串

这种由双引号(Double Quote)引起来的一串字符称为字符串字面值(String Literal),或者简称字符串。

注:字符串的结束标志是一个 \0 的转义字符。在计算字符串长度的时候 \0 是结束标志,不算作字符串内容。

//%s 打印字符串

#include 
//下面代码,打印结果是什么?为什么?(突出'\0'的重要性)
int main()
{
    char arr1[] = "bit";
    char arr2[] = { 'b', 'i', 't'};//2
    char arr3[] = { 'b', 'i', 't','\0' };//数组
    printf("%s\n", arr1);
    printf("%s\n", arr2);
    printf("%s\n", arr3);
    return 0;
}

//因为\0才可以结束,故2例没有出现\0,所以不知道什么时候结束,因此打印的部分出现乱码。

//监视

//C语言提供了一个库函数,可以计算字符串的长度

#include 
//下面代码,打印结果是什么?为什么?(突出'\0'的重要性)
int main()
{
    char arr1[] = "bit";
    char arr2[] = { 'b', 'i', 't' };
    char arr3[] = { 'b', 'i', 't','\0' };//数组
    int len1 = strlen(arr1);
    int len2 = strlen(arr2);
    int len3 = strlen(arr3);
    printf("%s\n", arr1);
    printf("%s\n", arr2);
    printf("%s\n", arr3);
    printf("%d %d %d\n", len1, len2, len3);
    return 0;
}

01.初识C语言1_第12张图片

2)转义字符

\\转义:转变原来的意思

#include 
int main()
{
 printf("c:\code\test.c\n");
    return 0;
}
转义字符 意义 ASCII码值(十进制)
\a 警告字符,响铃(BEL) 007
\b 退格(BS) ,将当前位置移到前一列 008
\f 换页(FF),将当前位置移到下页开头 012
\n 换行(LF) ,将当前位置移到下一行开头 010
\r 回车(CR) ,将当前位置移到本行开头 013
\t 水平制表(HT)  009
\v 垂直制表(VT) 011
\' 单引号 039
\" 双引号 034
\\ 反斜杠 092

 进制

\ddd ddd表示1~3个八进制的数字。 如:\130 X(前面是0-7则是八进制)
\xdd dd表示2个十六进制数字。 如: \x30 0

\\在c语言中,单引号是字符串的标志,如果想要一个真实的单引号,可以向前面加入\

#include 
int main()
{
    //问题1:在屏幕上打印一个单引号',怎么做?
    //问题2:在屏幕上打印一个字符串,字符串的内容是一个双引号“,怎么做?
    printf("%c\n", '\'');
    printf("%s\n", "\"");
    return 0;
}
//程序输出什么?
#include 
int main()
{
    printf("%d\n", strlen("abcdef"));
    // \62被解析成一个转义字符
    printf("%d\n", strlen("c:\test\628\test.c"));
    return 0;
}

6:a,b,c,d,e,f

14:c,:,\t,e,s,t,\62(8进制),2,8,\t,e,s,t,.,c 

\\一个转义字符整体是一个字符长度

5.注释

#include 
int Add(int x, int y)
{
    return x+y;
}
/*C语言风格注释
int Sub(int x, int y)
{
    return x-y;
}
*/
int main()
{
    //C++注释风格
    //int a = 10;
    //调用Add函数,完成加法
    printf("%d\n", Add(1, 2));
    return 0;
}

注释有两种风格:

C语言风格的注释 /*xxxxxx*/

缺陷:不能嵌套注释(一般别用)

C++风格的注释 //xxxxxxxx

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

你可能感兴趣的:(#,C语言,c语言)