C语言基础知识

初识C语言一

1. main 函数的注意点

  • main 函数叫主函数

    #include<stdio.h>//包含头文件
    //stdio  -> standard input output 标准输入输出的头文件,用于下面的printf库函数。
    int main()
    {
        printf("hehe\n");//在屏幕上打印hehe
    	return 0;
    }
    
  • 主函数是程序的入口

  • 主函数在一个文件当中有且只能有一个

  • 在一个工程项目中多个.c文件当中,只能有一个main函数


2. 数据类型

为什么会有数据类型呢?

答:本质上是写代码是解决生活中的实际问题的,生活中有整数,小数,字符等一系列的数据,需要给它们进行有效管理、存储,所以需要对于不同的数据进行不同的操作,采用不同的数据类型。

  •  char //字符型数据类型       1B
     short //短整型             2B
     int //整型                 4B
     long //长整型               4B/比int大
     long long //更长的整形C99   8B
     float   //单精度浮点数      4B
     double  //双精度浮点数      8B
     //我们需要知道每个数据类型的空间大小,需要sizeof这个操作符,计算的结果单位为字节    
    
  • 数据类型用在哪里呢?

答:用在创建变量的时候

char ch='w';
short r=2;
float weight=69.5f;
double  pai=3.14;
 

3.变量和常量

不变的值,C语言中用**常量来表示,变的值C语言中用变量**来表示

  • 变量在创建的时候要尽量初始化,赋初值
  • 变量名的定义需要一定的规则

标识符规则

  • 变量的分类:局部变量全局变量


4.变量的作用域和生命周期

局部变量的作用域局部变量的所在的局部范围生命周期为进入作用域创建,离开作用域销毁

全局变量的作用域整个工程生命周期为整个程序的生命周期


5.常量

  1. 字面常量 100,3,3.14 ,‘a’,"avddd" 不能修改
  2. const 修饰的常变量 —> 不能被修改的变量
const int num=100;//const修饰的num在初始化的时候被赋予了一个初值,之后就不能修改了,但是num本质上还是变量,不是常量
num=200;//这个赋值操作时错误的
  1. #define 定义的标识符常量
#define M 100   //M本质上就是100,也就是常量,它与100的区别---》M在使用者看来更加有含义,而100更多的是数字,没其他的显示含义
int main ()     //M不能被修改
{
    printf("%d",M);
    return 0;
}
  1. 枚举常量 -->一 一列举的取值
enum Color  // RED,BLUE,GREEN里面的是可能的取值,这些值时常量,不能被修改
{
	RED,//0
	BLUE,//1
	GREEN//2
};
int main()//主函数,程序的入口
{
	enum Color c = RED;
	printf("%d\n", RED);
	printf("%d\n", BLUE);
	printf("%d\n", GREEN);
	return 0;

}

6.字符串

  • 字符串的结束标志是**'\0'** 转义字符
  • \0对于字符串来说十分重要,在==计算长度打印输出==的时候,都是very important
  • %s 打印字符串, 从开始打印到\0停止
  • strlen为C语言提供的计算字符串长度的库函数,从开始到\0为止,不算\0

include<string.h>//strlen函数的头文件

include<stdio.h>

int main()//主函数,程序的入口
{

char ch = 'w';//单个字符
char ch1[] = { 'a','b','c' };//可以单个分别赋值
char ch2[] = "abc333";//可以用一个字符串字面量来赋值


printf("%s\n", ch1);//ch1中有abc
printf("%s\n", ch2);//ch2中有abc'\0'



printf("chlen1=%zd\n", strlen(ch1));
printf("chlen2=%zd\n", strlen(ch2));

return 0;

}


7.转义字符

本质上还是转义字符,也就是一个字符

  • \? ->就是? ,为了在书写连续多个问号时使用,防止他们被解析成三字母词
  • \' 就是 ` **用于表示字符常量 ’ **
printf("%c\n",'\'');
  • \“ 用于表示一个字符串内部的双引号
printf("%s\n","\"");
  • \a 警告字符,蜂鸣
  • \n 换行
  • \r 回车
  • \t 水平制表符
  • \v 垂直制表符
  • \ddd ddd表示1~3个八进制的数字。 如: \130 里面的数为0~7
  • \xdd dd 表示2个十六进制的数字 。 如:\x46
  • \\ 就是一个真实的\
  • \0 的ASCII值就是0
    1. ASCII 中的值 数字0本质上就是'\0'
    2. 字符‘0’本质上就是48
  • 11
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值