【初识C语言】介绍一下工具和这两天学的知识点

刚开始学习C语言,我选择vs2022作为初学工具,界面清新功能齐全且少了配置环境变量的步骤很方便,唯一缺点我认为是软件整体稍微有点占硬盘空间,不过在众多优点面前这也不值一提啦

在创建新项目后,鼠标右击解决方案中的源文件可以再添加新建项,创建以.c为后缀C语言源代码

不过源代码本身是文本文件,文本文件无法直接执行,需要通过编译器翻译生成.obj文件链接器的链接生成.exe文件,链接完成后生成的.exe为二进制的可执行文件

一个工程一般会由多个源文件(.c)组成,如下图

码代码时vs会自动排版非常方便,也可以养成一个好的书写习惯,并且在调试中也可以用vs对变量进行监视可以非常直观的看出程序运行时的变化

好啦介绍完工具就开始进入正文啦!

首先C语言是什么捏?

人和人之间沟通交流时就得用到语言,那人和机器交流时也是如此,只不过得换个语言

就像和中国人说话用中文,和英国人说话用英文一样,所以就有许多大佬开发了计算机语言,使得人能够与计算机进行沟通,让电脑能明白我们希望它做什么,但又因为大佬很多,所以计算机语言也有许多种类,我们今天就来学习一下这个非常经典的计算机语言——C语言

第一个C语言程序
#include <stdio.h>
int main()
{
	printf("hello world");
	return 0;
}

以下为运行结果,第一个程序那必须是经典的hello world开局啦

字符和ASCII编码

在编写C语言代码的过程中,字符需要用单引号括起来,如下

char a =  'a';

说到字符,就得提到ASCII码,这里不重点讲这个,这玩意背下来也不太可能,就记几个常用的就行,比如0的十进制是48十六进制是30,还有字母a和A也可以记一下

字符的打印可以用%c来指定格式,如下

#include <stdio.h>
int main()
{
	printf("%c\n", 'a');
	printf("%c\n", 48);//这里的48用%c输出时结果为0
	return 0;
}

 我们可以用for循环把可打印的字符全部展示一遍,结果在代码的后面

#include <stdio.h>
int main()
{//将ASCII码中的字符全部展示一遍
	int i = 0;
	for (i = 32; i <= 127; i++)
	{
		printf("%c ", i);
		if (i % 16 == 15)
			printf("\n");
	}
	return 0;
}

 字符串和\0

上面提到了字符,那既然有单个字符,就得有字符串,也就是把单个字符串成一串

在C语言中,字符串需要用双引号括起来,换句话说,使用双引号括起来的一串字符就被称为字符串,字符串的格式控制字符为%s

比如我下面这行代码中的“hello”就是字符串,可以看到运行之后会把hello给打印出来

printf("%s\n", "hello");

 下面要讲一个很重要的点,就是字符串的结尾时隐藏着一个\0字符的,这个\0字符时字符串结束的标志,假如没了这个\0那结果就会变成随机的,变成乱码

可以从下图左下角的监视1中看出,字符串的末尾隐藏了\0

 下面我演示一下乱码打印和正常打印两种结果,arr1由于没有\0结尾所以打印为乱码,arr2中的abc后面因为有\0所以可以正常打印

 转义字符

刚开始学时,看到别人代码中的\n \b \t什么的可能会很疑惑,这些是啥捏又有啥用捏

其实这些就是转义字符,顾名思义就是转变原来意思的字符,可以从下图知,不同的转义字符有不同的作用,这里不一一列举,感兴趣可以直接搜索转义字符

 在众多转义字符中有两个比较独特

\ddd:ddd表示1-3个八进制的数字  如:\721

\xdd:   dd表示两个十六进制数字     如:\x32

下图为ASCII码和不同转义字符的混用,自己多写代码验证的同时也加深记忆

好啦今天就写到这啦!

2023.7.21

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值