初识C语言

目录

 

什么是C语言:

C语言来源:

C语言的发展过程:

C语言文件类型:

C语言数据类型:

打印函数 printf() :

大小函数 sizeof():

输入函数 scanf():

return() :

变量与常量:

变量分类:

变量的作用域:

变量的命名:

声明变量的理由:

常量分类:

C语言的入口:

注释:

C语言的结构:


什么是C语言:

C语言是一种计算机语言,计算机语言就是我们人类和计算机交流的语言,常用的计算机语言有C、C++、JAVA、python等等;

C语言来源:

计算机本身是通电的,有正电和负电,分别用1和0代替,计算机也只能识别1和0这样的二进制语言,如果我们需要计算机实现一个功能,那我们就需要去写很多这样的010101010.....,对我们来说,这种做法十分反人类,后来就有人想,某些操作是一定的,那能不能把这些操作对应的二进制语言做一个标识呢,比如加法,就用add来标识一堆的01010101.....,这种类似于add的标识就叫做助记符,使用助记符的语言就叫汇编语言

但是汇编语言使用起来依旧不符合我们的使用习惯,依旧有很多地方很难使用,于是就出现了B语言,后来又出现了C语言,再后来出现了C++,像C、C++、JAVA、python这些都叫高级语言,当然,B语言已经几乎被遗弃了;

当语言越高级,使用的人就越多,因为使用条件越来越低。

C语言的发展过程:

C语言刚开始是一个很不成熟的语言,C语言的使用方也不同,每个人/组织会对C语言加一些自己特有的东西,这个时候出现了一个问题,C语言不统一,这就导致了一个结果,C语言移植到别的地方,无法使用,无法编译,于是出现了C语言的国际标准,ANSI C,是89年推出的,这个标准也被称为C89,再后来出现了C99、C11的规范;(额外说一句,其实判断一门语言好不好的一个标准,就是看有没有国际标准,如果没有国际标准,那说明不被世界认可呀,那这个语言好还是不好呢,这是个神奇的问题)

C语言文件类型:

.c 源文件

.h 头文件

# include <stdio.h> 包含一个叫做stdio.h的文件,或者说导入  stdio全程是standard input output,标准输入输出

#include <stdio.h>的作用相当于把stdio.h文件中的所有内容都输入该行所在的位置,实际上,这是一种复制粘贴的操作

#include这行代码是一条C预处理器指令,通常,C语言在编译前会对源代码做一些准备工作,也就是预处理

所有的C编译器软件包都提供stdio.h文件

C语言数据类型:

char 字符型  1个字节 (1个字节等于8个比特位的大小)

short 短整形  2个字节

int 整形  4个字节

long 长整形  4/8个字节 (C语言标准规定,只要long类型的大小大于等于int就可以,编译器不同,long类型的大小就不同)

longlong 再长一点的长整形  8个字节

float 单精度浮点型  4个字节

double 双精度浮点型  8个字节

打印函数 printf() :

    %d 打印整形

    %f 打印浮点型

   %lf 打印双精度浮点型

    %c 打印字符

    %p 打印地址

    %x 打印16进制

printf("hello word")

大小函数 sizeof():

可以获取传入参数的大小,计算的是变量或者类型所占用的空间的大小,单位是字节

sizeof(int);

输入函数 scanf():

可以获取键盘输入,回车传入 (& 地址符,代表取地址)   如果使用的IDE是 VS ,可能会报一个警告,甚至告诉你这个函数不能用,那就在源文件开头第一句加上 #define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>


int main() {
    int age = 99;
    scanf("%d", &age);
    printf("%d", age);
    return 0;
}

return() :

int main(void)中的int表名,需要返回一个整数,C语言的标准要求这么做,有返回值的C函数需要用 return结尾,其实程序在运行到最后的花括号的时候,也会自动返回0,所以其实也可以省略,但是建议大家养成习惯,不然有返回值的忘了写返回值,那就麻烦咯~

变量与常量:

变量,如字面意思,会发生变化的量,比如年龄,体重等

常量,不会发生变化的量,比如性别,身份证,电话号码等

定义变量的方式:

类型 变量名 = 值;

比如:int price = 99;

注意:在C语言里,C89的规范规定,变量的定义必须在代码的最开始,也就是说,C不像JAVA,C++那样,需要的时候再定义,而是需要你全部定义好,C99及C++等没有这个问题,只要你在使用的时候,这个变量是已经定义好的就OK

变量分类:

局部变量、全局变量;

定义在代码块外部的变量就是全局变量(代码块指的是用 {} 括起来的部分)

定义在代码块内部的变量就是局部变量

例如age就是一个全局变量,price就是一个局部变量

#include <stdio.h>

int age = 100;

int main() {
    int price = 99;
    printf("%d\n", age);
    printf("%d\n", price);
    return 0;
}

局部变量的优先级要高于全局变量

#include <stdio.h>

int age = 100;

int main() {
    int age = 99;
    printf("%d\n", age);
    return 0;
}

顺便一提,声明变量可以一次声明多个

int price, age;

比较特殊的变量:指针变量,用来存储一个地址 比如 int* p = &name; 将name的地址存到了变量p里  指针变量是有类型的

变量的作用域:

局部变量的作用域是其所在的局部范围,而全局变量的作用域是整个工程

变量的命名:

命名一定要规范,一定要规范,别什么aa、bb,要见名知意,不行就写个注释,起码得让人知道这是干什么的,这个很重要,本人是做java的,维护一部分公司的老项目,这些项目变量名极其不规范,给我的工作带来了很大的麻烦

可以用小写字母、大写字母、数字和下划线(_)来命名,名称的第1个字符必须是字符或下划线,不能是数字

PS:操作系统和C库经常使用以一个或两个下划线字符开始的标识符,比如_kcab,所以我们最好避免在程序里使用这种名称,操作系统和C库经常使用以一个或两个下划线字符开始的标识符,如库标识符,这些标识符都是保留的,这就意味着,如果你命名不得当,会造成名称冲突

C语言也是一个强类型,强大小写的语言

声明变量的理由:

一些老的语言,都允许直接使用变量,不需要事先声明,但是C不采用这种方式,原因也很简单

1、把所有的变量放在一处,方便使用者和读者查找和理解程序的用途

2、事先声明变量,你就会有一个程序框架计划,有一个整体思路

3、声明变量可以避免一些小错误,如变量名写错,比如1和l,你打错了,这就是两个变量

4、这是最重要的,你不声明变量,连C语言的编译都通不过..........

常量分类:

字面常量

100

const修饰的常变量,相当于java的final,不可变的变量,所以叫常量

const int num = 100;

#define定义的标识符常量

# define STATUS 200;

枚举值常量

enum status{
    life,
    died
};

C语言的入口:

C语言的入口同java等一样,从主函数入口

注释:

/**/    多行注释

//     单行注释

注释只是为了让人去写一些自己想写的东西,编译器会忽略掉这部分

C语言的结构:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值