当前位置: 首页 > article >正文

初学C语言以及C语言的常见概念

一,何为C语言?

1. 如今,编程语言的种类有上千种之多,而C语言就是众多编程语言中经久不衰的一门计算机语言。

另外,C语言属于编译型计算机语言。

二,C语言的发展历史

C语言是最初是作为Unix系统的开发工具而发明的。

1972年丹尼斯·里奇和布莱恩·柯汉林在B语言的基础上发明了C语言,1973年整个Unix系统完全使用C语言进行重写。为了C语言在各种编译器上都能运行,1988年美国国家标准协会(ANSI)正式将C语言标准化。甚至至今C语言依旧在计算机语言排行榜上霸榜前三。

三,关于编译器的选择

由于C语言是一门编译型语言C语言的,因此必须通过编译器翻译和链接器的链接生成二进制的可执行文件才能进行运行。

1.编译器能够将计算机语言转换成能够执行的机器指令。

常见的C语言编译器有msvc,clang,gcc等

2.集成开发环境(IDE)是用于提供程序开发环境的应用程序,包括了代码编辑器,编译器,调试器和图形用户界面等工具。

常见的集成开发环境有VS2022,DevC++,Clion等

VS2022集成了MSVC(安装包较大,功能强大使用,操作简便,社区版免费)

Xcode集成了clong(苹果电脑上的开发工具)

DevC++集成了gcc(安装包小巧,界面简洁,不利于代码风格养成,一些竞赛使用,例如蓝桥杯)

Clion默认使用CMake,编译器是可以配置的(此工具收费)

推荐使用的编译器是VS2022,VS2022是主流的集成开发环境,在企业中使用较为普遍,并且包含了编译器,链接器和调试器功能强大。并且不需要配置环境对于咱们初学者而言非常友好。

四,VS的使用,源文件和头文件的添加

1.创建新项目

2.添加源文件(右键源文件添加,选择新建项)

3.选择第一项c++文件,创建一个.c类型的文件,文件命名最好为英文

4.开始写代码。 

五,第一个C语言程序

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

VS2022代码运行快捷键ctrl加f5

六,main函数

main函数是程序的入口,每个C语言程序都是从main函数开始执行的。

main函数又称作主函数,一个程序只能有一个main函数。

main函数使用时前面是返回值类型后面是一个()或者(void)

下面这两种形式都是可以的,例子中使用了int的返回类型:

int main()
int main(void)

使用main函数的注意事项:

1.不要将main写成mian。

2.main后面的()不能漏写,括号里void可写可不写。

3.代码中要全部使用英文字符不能出现中文字符。

七,printf函数和库函数

上面的代码中用到了printf函数,代码如下:

printf("hello world\n");

代码中使用了printf函数对“hello world”这个字符串进行了输出,实现了在屏幕上的信息打印。

printf是一个库函数,功能是在输出设备上进行信息的打印。以上代码是对字符串的打印,当然它也可以打印其他类型的信息。例如下面的代码:

int n=300;
printf("%d\n",n);//打印整型
printf("%c",'d');//打印字符
printf("%lf\n",3.14);//打印双精度浮点型

此处的%d和%c和%lf都是占位符会被后面的值替换掉。

另外,使用库函数的时候需要引用头文件,如下:

#include<stdio.h>

一个库函数一般会声明在同一个头文件中,因此库函数的使用需要包含对应的头文件。

上面的代码就包含了头文件stdio.h这样的头文件,由于库函数比较多在这里就不一一解释了。

八.关键字

C语言中有一批保留的名字和符号,例如int,if,return等,这些符号被称为保留字或关键字。

 关键字都有特殊的含义;

写程序时自己创建的标识符不能与关键字重复;

关键不能自己创建。

九,ASCII码

由于计算机中所有数据都是以二进制的形式储存的,因此为了将字符存储起来,就给这些字符编一个二进制序列,叫做编码。为了每个国家的编码一致,后来美国(ANSI)出台了一个标准ASCII码,此后C语言中的字符就遵循了ASCII编码的方式。

下图是ASCII码表:

以上就是这篇博客的全部内容,如有错误还请大家指出谢谢大家的阅读。

部分图片来自于网络,如有侵权请联系删除。

http://www.lryc.cn/news/2416491.html

相关文章:

  • Sublime text 3最新注册码
  • Windows Installer Clean Up 软件正常卸载不了时,请它帮忙!
  • cocostudio使用基本要点汇总
  • AIS(自动识别系统)介绍
  • 【.NET】.NET 框架概述
  • fastDB个人使用心得
  • 进化算法——多目标优化
  • MNE溯源fieldtrip官网教程
  • JDK1.6安装详解、环境变量设置、测试安装及注意事项
  • leetcode Surrounded Regions 详解
  • java正则Matcher.matches()、Matcher.lookingAt()、Matcher.find()、 group()详解
  • 【实践】java.lang.Integer源码分析
  • CImage 从内存中读取图像
  • FileZilla Server简介及使用说明
  • 解决Adobe reader 8 突然打不开了并报许可协议的问题
  • 2023年【A特种设备相关管理(锅炉压力容器压力管道)】报名考试及A特种设备相关管理(锅炉压力容器压力管道)模拟考试题
  • vue 项目如何捕获awit 错误情况
  • 可行性分析与需求分析 —以图书馆管理系统为例
  • 破解密码的8种典型手段与防护建议
  • Linux service network服务重启失败及ping不通外网解决办法
  • linux 多媒体安装和使用
  • cnna词汇集(三)
  • CreateProcess失败返回错误代码998
  • 0x0000007B是什么意思?解决方案
  • 43张图详解计算机网络,看这一篇就够了
  • C语言中,事件对象(CreateEvent)、互斥对象(CreateMutex)、关键代码段(InitializeCriticalSection)
  • 量子通信和传统通信的对比分析
  • keil报错:Loading PDSC Debug Description failed for STMicroelectronics STM32Fxxxxxxx
  • php ismethod,PHP的method_exists,function_exists,is_callable的区别
  • linux ioctl 函数