初始C语言(二)

一、字符和ASCll码值

学习C语言怎么会不知道字符和它对应的ASCll码值呢,键盘上可以敲除各种字符,像‘a’,‘b’,‘#'等等,我们敲代码的时候,这些字符是要用单引号括起来的。

计算机中的数据都是以二进制的形式存储的,那这些字符都是以什么样的二进制存储的呢?美国国家标准学会出台了一个标准的ASCll编码,如下图

哇哦!128个ASCll码值我们不会都要记住吧,当然不用,使用时查看就可以了,当然掌握几组特殊的数据是更好的。

①字符A~Z的ASCll码值从65~90

②字符a~z的ASCll码值从97~122

③数字字符0~9的ASCll码值从48~57

#include<stdio.h>
int main() 
{
        printf("%d\n", 100);       //%d-打印整数
		printf("%s\n", "haha");    //%s-打印字符串
		printf("haha\n");          //""括起来的一串字符被成为字符串;\n表示换行
		printf("%f\n", 3.14);      //%f打印小数(小数点后会打印6位)
		printf("%c\n", 'u');       //%c打印字符(需要用单引号把需要打印的字符括起来)
		printf("%c\n", 113);       //这里的113是q的ASCII码值
         return 0
}

这个就是运行的结果,细心的朋友应该看到了我在代码后面标的注释,都是知识点,小本本记下来🤔,可能有些人会纳闷,第一行代码和最后一行,明明都是数字,为什么结果不一样。那是因为他们的占位符不一样一个是%d,一个是%c哦,占位符想必很好理解,上面几行代码也举例了常用的占位符。

二、转义字符

在上面的知识点中我们见识到了\n这个转义字符,转义字符顾名思义就是转变原来的意思,通过下面这组代码,来看看转义字符的用处。

感受到\n这个换行符的魅力没,大家也可以下去试试。C语言中的转义字符还要如下一些,大家可以自己敲敲代码,感受一下不同的转义字符的魅力。

\? :在书写连续多个问号时使⽤,防⽌他们被解析成三字⺟词,在新的编译器上没法验证              了。
\' :⽤于表⽰字符常量'
\" :⽤于表⽰⼀个字符串内部的双引号
\\ :⽤于表⽰⼀个反斜杠,防⽌它被解释为⼀个转义序列符。
\a :警报,这会使得终端发出警报声或出现闪烁,或者两者同时发⽣。
\b :退格键,光标回退⼀个字符,但不删除字符。
\f :换⻚符,光标移到下⼀⻚。在现代系统上,这已经反映不出来了,⾏为改成类似于 \v 。
\n :换⾏符。
\r :回⻋符,光标移到同⼀⾏的开头。
\t :制表符,光标移到下⼀个⽔平制表位,通常是下⼀个4/8的倍数。
\v :垂直分隔符,光标移到下⼀个垂直制表位,通常是下⼀⾏的同⼀列。

还有两种转义字符

\ddd:d d d可以表示1~3个八进制的数字。如\130    表示字符X

\xdd:   d d表示2个十六进制的数字。如\x30     表示字符0

演示如图:

进制转化过程如下:

三、注释

1.什么是注释,为什么要写注释?

注释就是对代码的说明,编译器会忽略注释,所以注释对实际代码没有影响。

注释是给自己或者给其他程序员看的,可以让我们更好理解代码,如下图

2.注释的两种形式

注释有两种形式,第一种是//,第二种是/*内容*/,如下图是两种注释的用法

#include<stdio.h>
int main()
{
/*printf("haha\n")*/

/*int a = 0;
printf("%d\n",a);*/

//printf("haha\n”);
//int a = 0;
//printf("%d\n",a);
return 0;

四、数据类型的介绍

1.认识不同的数据类型

今天我们学习内置类型。

1.1字符型

1.char
2.[ signed ] char // 有符号的
3.unsigned char // ⽆符号的

1.2整型

1.//短整型
① short [ int ]
② [ signed ] short [ int ]
③ unsigned short [ int ]
2.//整型
① int
② [ signed ] int
③ unsigned int
3.//⻓整型
① long [ int ]
② [ signed ] long [ int ]
③ unsigned long [ int ]
4.//更⻓的整型
//C99中引⼊
① long long [ int ]
② [ signed ] long long [ int ]
③ unsigned long long [ int ]

1.3浮点型

① float
② double
③ long double

1.4布尔类型

_Bool或者bool

布尔类型的使⽤得包含头⽂件 <stdbool.h>
布尔类型变量的取值是: true或者false
专门用来表示真假的变量,在C语言中,我们也常用整数0来表示假,非零值表示真。

2.各种数据类型的长度

每一种数据类型都有自己的长度,使用不同的数据类型可以创建不同长度的变量,变量长度的不同又会影响储存的数据范围。
那么如何求数据类型的长度嘞?我们要认识一个新的操作符 sizeof

  2.1.sizeof操作符

sizeof  是一个关键字,也是操作符,专门用来计算指定数据类型或者变量所占据内存的字节数。
语法如下:
1.sizeof(类型)
2.sizeof 表达式
tips: sizeof的计算结果是size_t类型的。因此我们的占位符可以把 %d改成 %zd

  2.2 利用sizeof操作符计算长度

以下是一些事例,打击可以模仿练习,感受一下 sizeof  的魅力。
想必还是比较直观吧,然后我们再使求一下部分的数据类型长度,没有涉及到的大家可以亲手去试试。

五、signed和unsigned

   C语言使用 signedunsigned  修饰字符型和整型类型的。
  
   signed  关键字,表示一个类型带有正负号,包含负值
unsigned 关键字,表示一个类型不带有正负号,只能表示零和正整数
其实   signed  一般可以省略不写,但是写了也没有错。
1.signed int a;   //等同于int a

2.unsigned int a;

六、变量

6.1 变量的创建

变量创建的语法形式是这样的:

1 data_type   name;

        |                | 

        |                | 

2 数据类型      变量名

int age;  // 整型变量

int ch;   //字符变量

int weight; //浮点型变量

在创建变量时,给变量一个初始值,这就叫初始化。
int age = 18;
double weight = 48.0;

6.2 变量的分类

全局变量:在大括号外部定义的变量就是全局变量,全局变量的使用范围更广。

局部变量:在大括号内部定义的变量就是局部变量,适用范围有局限,只能在自己所在的局部范围内使用。
#include<stdio.h>
 int global = 0 ;//全局变量
 
int main()
{
   int local = 1 ;//局部变量
printf("%d\n",local);
printf("%d\n",global);
return 0 ;
}

倘若局部和全局变量名字相同,那该怎么办嘞?

其实当局部变量和全局变量名字相同时,优先使用局部变量。大家可以尝试一下

#include<stdio.h>
int a = 2023;

int main()
{
  int a = 2024;
      printf("%d\n",a);  // 打印的结果会是多少呢?大家可以尝试运行这段代码
  return 0;
}

以上就是本次的内容分享了,如果大家有什么不懂的,或者是我哪里写错了,欢迎大家在评论区指出,一起讨论,一起进步(ง •_•)ง。每天都是全新的自己,我们下篇文章见,ヾ( ̄▽ ̄)Bye~Bye~!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值