初始C语言:打开新世界的大门

1.C语言是什么?

在日常生活中,我们和家人、老师、朋友相互交流的语言成为自然语言,如汉语,日语,英语等等。那人与电脑是如何交流的呢?人与电脑之间是通过计算机语言来进行交流的。⽬前已知已经有上千种计算机语⾔,⼈们是通过计算机语⾔写的程序,给计算机下达指令,让计算机⼯作的。C语⾔就是众多计算机语⾔中的⼀种,当然C++/Java/Go/Python都是计算机语⾔。

2.C语言的历史与辉煌

C语言最早是由贝尔实验室的Dennis Ritchie为了UNIX的辅助开发而编写的,它是在B语言的基础上开发出来的。尽管C语言不是专门针对UNIX操作系统或机器编写的,但它与UNIX系统的关系十分紧密。由于它的硬件无关性和可移植性,使C语言逐渐成为世界上使用最广泛计算机语言。同时,C语言也对其他编程语言产生了很大的影响,如C++,Java等等。如今世界上已经产生了上千种编程语言,但C语言仍然稳居前3名,可见它的重要性。

3.编译与连接

C语⾔是⼀⻔编译型计算机语⾔,C语⾔源代码都是⽂本⽂件,⽂本⽂件本⾝⽆法执⾏,必须通过编译 器翻译和链接器的链接,⽣成⼆进制的可执⾏⽂件,可执⾏⽂件才能执⾏。

 下面为大家展示图像

  • 每个源⽂件(.c)单独经过编译器处理⽣成对应的⽬标⽂件(.obj为后缀的⽂件)
  • 多个⽬标⽂件和库⽂件经过链接器处理⽣成对应的可执⾏程序(.exe⽂件)

 4.编译器的选择

C语⾔是⼀⻔编译型的计算机语⾔,需要依赖编译器将计算机语⾔转换成机器能够执⾏的机器指令。 那我们常⻅的C语⾔编译器都有哪些呢?⽐如:msvc、clang、gcc就是⼀些常⻅的编译器,当然也有⼀些集成开发环境如:VS2022、 XCode、CodeBlocks、DevC++、Clion等。 集成开发环境(IDE)⽤于提供程序开发环境的应⽤程序,⼀般包括代码编辑器、编译器、调试器 和图形⽤⼾界⾯等⼯具。集成了代码编写功能、分析功能、编译功能、调试功能等⼀体化的开发软 件服务套。

友友们,我自己现在使用的是Vs2022.

5.第一个C语言程序

相信大家刚开始大的第一代码都是"Hello World",下面我为大家操作一下

#include<stdio.h>
int main()
{
	printf("hello world");
	return 0;
}

 5.1 main函数

每个C语⾔程序不管有多少⾏代码,都是从 main 函数也被叫做:主函数。 main 函数开始执⾏的, main 前⾯的 int 表⽰ 型的值。所以在 main 函数的最后写 main 函数是程序的⼊⼝, main 函数执⾏结束的时候返回⼀个整型类 return 0; 正好前后呼应。

  • main函数是程序的⼊⼝
  • main函数有且仅有⼀个
  • 即使⼀个项⽬中有多个.c⽂件,但是只能有⼀个main函数(因为程序的⼊⼝只能有⼀个)

5.2 第一次写代码的常见错误

• main被写成了mian

• main后边的()漏掉了

• 代码中不能使⽤中⽂符号,⽐如括号和分号

• ⼀条语句结束后,有分号

6.关键字

C语⾔中有⼀批保留的名字的符号,⽐如: 字。 int 、 if 、 return ,这些符号被称为保留字或者关键字。

注意:

  • 关键字都有特殊的意义,是保留给C语⾔使⽤的。
  • 程序员⾃⼰在创建标识符的时候是不能和关键字重复的。
  • 关键字也是不能⾃⼰创建的。

C语言的32个关键字如下: 

 后续会给大家慢慢介绍这些关键字的用法

7.字符和ASCII编码

7.1 ASCII编码

 我们知道在计算机中所有的数据都是以⼆进制的形式存储的,那这些字符在内存中分别以什么样的⼆ 进制存储的呢?

如果我们每个⼈⾃⼰给这些字符中的每个字符编⼀个⼆进制序列,这个叫做编码,为 了⽅便⼤家相互通信,不造成混乱,后来美国国家标准学会(ANSI)出台了⼀个标准ASCII编码,C 语⾔中的字符就遵循了ASCII编码的⽅式。

 参考:https://zh.cppreference.com/w/cpp/language/ascii 我们不需要记住所有的ASCII码表中的数字,使⽤时查看就可以,不过我们最好能掌握⼏组特殊的数据:

• 字符A~Z的ASCII码值从65~90

• 字符a~z的ASCII码值从97~122

• 对应的⼤⼩写字符(a和A)的ASCII码值的差值是32

• 数字字符0~9的ASCII码值从48~57

• 换⾏ \n 的ASCII值是:10

• 在这些字符中ASCII码值从0~31这32个字符是不可打印字符,⽆法打印在屏幕上观察

7.2 什么是字符

在键盘上可以敲出各种字符,如:a,q,@,#等,这些符号都被称为字符,C语⾔中字符是⽤单引号 括起来的,如:'a','b','@'。

7.3 转义字符

而在字符中有一种特殊的字符,比如‘\n’,‘\0’,这些特殊的字符,我们称它为转义字符,并且每一个转移字符都有特殊含义。下面是一些常见的转义字符及其含义。

注意:

区分,斜杠:“/” 与 反斜杠:“” ,此处不可互换

8.字符串

8.1 字符串是什么

那什么是字符串呢?使⽤双引号括起来的⼀串字符就被称为字符串,如“abcd”,“1234”,但是和字符不同的是,字符串会在结尾默认加个’\0’,作为其结束标志

8.2 打印字符串

	printf("hello world");
	puts("hello world");

打印的方法有多种,以后会慢慢学到。

9.注释

9.1 为什么要注释

注释是对代码的说明,编译器会忽略注释,也就是说,注释对实际代码没有影响。 注释是给程序员⾃⼰,或者其他程序员看的。 好的注释可以帮我们更好的理解代码,但是也不要过度注释,不要写没必要的注释。 当然不写注释可能会让后期阅读代码的⼈抓狂。 写注释⼀定程度上反应了程序作者的素质,建议⼤家写必要的注释,在未来找⼯作的时候,写代码时 留下必要的注释也会给⾯试官留下更好的印象。

9.2 注释的两种形式

9.2.1 单行注释

双斜杠 // 后⾯,从双斜杠到⾏尾都属于注释。这种注释只能是单⾏,可以放在⾏⾸,也可以放在⼀⾏语句的结尾。这是C99标准新增的语法。

9.2.2 多行注释

注释放在 /*…*/ 之间,内部可以分⾏。也就是说可以一次性注释多行代码

#include<stdio.h>
int main()
{
	/*printf("hello world");
	return 0;*/
	
}

注意:

  • 不管是哪⼀种注释,都不能放在双引号⾥⾯。双引号⾥⾯的注释符号,会成为字符串的⼀部分,解释为普通符号,失去注释作⽤。
 printf("// hello /* world */ ");

 上⾯⽰例中,双引号⾥⾯的注释符号,都会被视为普通字符,没有注释作⽤。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值