目录

C语言之C生万物

VS2019的使用方法(如下图)

C语言的构成:

主函数

左值

右值

#include

scanf()函数

printf()函数


C语言之C生万物

C语言作为一门底层开发语言,从十九世纪七十年代诞生至今近50年间,在TIOBE 排行榜中,C/C++位置长期霸占前三名,没有丝毫撼动,可谓经典永不过时!


而C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的
C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超
级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制
定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。 [1] 目前2011年12月8
日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标
准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉
字编程。


C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。
其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

Clang是一个C语言、C++、Objective-C语言的轻量级编译器。源代码发布于BSD协议下。Clang是一个由Apple主导编写,基于LLVM的C/C++/Objective-C编译器,2013年4月,Clang已经全面支持C++11标准,并开始实现C++1y特性(也就是C++14,这是C++的下一个小更新版本)。Clang将支持其普通lambda表达式、返回类型的简化处理以及更好的处理constexpr关键字。

终端用户特色:
快速编译和较少内存占用;有诊断功能;兼容GCC。

GCC原名为GNU C语言编译器(GNU C Compiler),只能处理C语言。但其很快扩展,变得可处理C++,后来又扩展为能够支持更多编程语言。GCC(GNU Compiler Collection,GNU编译器套件)是由GNU开发的编程语言编译器,GCC的初衷是为GNU操作系统专门编写一款编译器,现已被大多数类Unix操作系统(如Linux、BSD、MacOS X等)采纳为标准的编译器,甚至在微软的Windows上也可以使用GCC。

MSVC,就是微软(MS)的VC运行库,即Visual C++的运行库。使用微软的运行库可以在编程的时候大大减少编码量,同时也能提高代码的兼容性,在运行的时候,就需要事先安装好运行库。而所有的运行库统称为MSVC。属于集成开发环境。而在C语言学习阶段,将会使用到VS2019(Visual Stdio 2019)。


VS2019的使用方法(如下图)

其中包括编辑器,编译器,调试器,链接器。

最后,便能开始C语言的编程啦!


C语言的构成:

主函数

int main()
{return 0;//要缩进,返回值0
}//一个C程序有多个函数,但只有一个主函数,执行代码是先从主函数开始执行
//书写代码要规范
//每个一句以分号形式结束,但函数的头文件处的预处理命令不能加分号
//函数体内,在函数后要加{}
#define _CRT_SECURE_NO_WARNINGS 1//此处定义一个安全函数,解决VS环境下scanf无法安全使用的情况
#include<stdio.h>//#定义的预处理命令,头文件
int main()
{int a = 0;//定义一个整型变量scanf("%d",&a);//输入函数,%d是从键盘接收一个整型变量,用“,”隔开,&a中&是寻址操作符printf("Hello World!\n");//'\n'是换行命令符,“”内输入要输出的内容printf("%d",a);//输出函数return 0;
}
//&a表示对象a在内存中的地址,是一个右值
//在C语言中表示位于赋值运算符两侧的两个值,左边叫左值(内存空间),右边叫右值(内存地址里的数据)

左值

指的是如果一个表达式可以引用到某一个对象,并且这个对象是一块内存空间且可以被检查和存储,那么这个表达式就可以作为一个左值。


右值

指的是引用了一个存储在某个内存地址里的“数据”。
从上面的两个定义可以看出,左值其实要引用一个对象,而一个对象在我们的程序中又肯定有一个名字或者可以通过一个名字访问到,所以左值又可以归纳为:左值表示程序中必须有一个特定的名字引用到这个值。而右值引用的是地址里的内容,所以相反右值又可以归纳为:右值表示程序中没有一个特定的名字引用到这个值除了用地址。


#include<stdio.h>

此段代码是文件包含命令,主要是将<>或""中的文件命令包含到本程序中,使其成为代码的一部分,包含的文件一般由系统提供。这里的stdio是standard input output的缩写,是标准输入输出的意思。有了这个头文件就可以使用scanf函数和printf函数。


scanf()函数

输入函数,格式 scanf(格式控制字符串,参数地址表);

其中,格式控制字符串是用双引号括起来的字符串,它包括格式转换说明符和分隔符两个部分。函数 scanf ()的格式转换说明符通常由%开始,并以一个格式字符结束,用于指定各参数的输入格式。

scanf()的格式转换说明符
格式转换说明符 用法
%d 输入十进制整数
%o 输入八进制整数
%x 输入十六进制整数
%c 输入一个字符,空白字符(包括空格,回车,制表符)也作为有效字符输入
%s 输入字符串,遇到空白字符(包括空格、回车、制表符)时,系统认为读入结束(但在开始读之前遇到的空白字符会被系统跳过)
%f或%e 输入实数,以小数或指数形式输入均可
%% 输入一个百分号

printf()函数

输入函数,格式 printf(格式控制字符串);

printf(格式控制字符串,输出值参数表);

其中,格式控制字符串( Format String )是用双引号括起来的字符串,也称转换控制字符串,输出值参数表中可有多个输出值,也可没有(只输出一个字符串时)。一般情况下,格式控制字符串包括两部分:格式转换说明( Format  Specifier )和需原样输出的普通字符,格式转换说明由%开始,并以转换字符( Conversion  Character )结束,用于指定各输出值参数的输出格式。

printf()的格式转换说明
格式转换说明 用法
%d 输出带符号的十进制整数,正数的符号省略
%u 以无符号的十进制整数形式输出
%o 以无符号的八进制整数形式输出,不输出前导符0
%x 以无符号十六进制整数形式(小写)输出,不输出前导符0x
%X 以无符号十六进制整数形式(大写)输出,不输出前导符0x
%c 输出一个字符
%s 输出字符串
%f 以十进制小数形式输出实数(包括单、双精度),整数部分全部输出,隐含输出6位小数,输出的数字并非全部是有效数字,单精度实数的有效位数一股为7位,双精度实数的有效位数一般为16位。
% f 适合于输出像3.14这样的小数位较少的实数,可以使实数输出的宽度较小
%e 以指数形式(小写 e 表示指数部分)输出实数,要求小数点之前必须有且仅有一位非零数字。
%E 以指数形式(大写E表示指数部分)输出实数
%g 自动选取f或 e 格式中输出宽度较小的一种使用, 且不输出无意义的0
%% 输出百分号%

Continue......

初识C语言学习笔记 入门相关推荐

  1. R语言学习笔记——入门篇:第一章-R语言介绍

    R语言 R语言学习笔记--入门篇:第一章-R语言介绍 文章目录 R语言 一.R语言简介 1.1.R语言的应用方向 1.2.R语言的特点 二.R软件的安装 2.1.Windows/Mac 2.2.Lin ...

  2. R语言学习笔记——入门篇:第三章-图形初阶

    R语言 R语言学习笔记--入门篇:第三章-图形初阶 文章目录 R语言 一.使用图形 1.1.基础绘图函数:plot( ) 1.2.图形控制函数:dev( ) 补充--直方图函数:hist( ) 补充- ...

  3. 易语言学习笔记——入门篇

    易语言学习笔记20180709 最早接触易语言是三年前的事情了,那时候是因为DNF这个游戏我才知道了易语言这个编程语言,当时对他就非常的憧憬.只不过那时候易语言的学习资源比较少,而且自身的学业比较重就 ...

  4. C语言学习笔记-入门整合篇(十万字长文)

    (该篇学习内容全部来自于C语言中文网, 本篇内容仅仅是简易学习笔记 , 以自己的理解+网站部分描述结合+个人补充,并不适合编程初学者观看!!! 需要有一定的编程基础) 数据在内存中存储 内存条包含了上 ...

  5. R语言学习笔记 (入门知识)

    R免费使用:统计工具: # 注释,行注释 块注释:anything="这是注释的内容" 常用R语言编辑器:Rsutdio,Tinn-R,Eclipse+StatET:中文会有乱码 ...

  6. 初识c语言—学习笔记

    ​ 文章目录 1.基本数据类型 2.scanf与scanf_s 3.作用域和生命周期 4.常量 1.基本数据类型 类型名称 字节大小(byte) char(字符型) 1 short(短整型) 2 in ...

  7. C语言学习笔记-P1 初识C语言(2)

    C语言学习笔记-P1 初识C语言(2) C语言学习笔记-P1 初识C语言(2) 一.常量 1.字面常量 2.const修饰的常变量 3.#define定义的标识符常量 3.枚举常量 二.字符串+转义字 ...

  8. C语言学习笔记-P1 初识C语言(1)

    C语言学习笔记-P1 初识C语言(1) P1 初识C语言(1) 一.什么是C语言 1.定义 2.发展 二.第一个C语言程序 Hello World 三.数据类型 四.变量,常量 未完待续!!! P1 ...

  9. LearnOpenGL学习笔记—入门03:Hello Triangle

    LearnOpenGL学习笔记-入门03:Hello Triangle 0 前言 1 图形渲染管线 2 顶点输入 3 VAO,VBO 3.1 VAO建立 3.2 VBO建立 4 shader 5 绘制 ...

  10. 【Go语言 · 学习笔记】

    文章目录 Go语言 · 学习笔记 一.Go包管理 1. 什么是Go语言中的包 2. 包的命名 3. main包 4. 导入包 5. 远程包导入 6. 命名导入 7. 包的init函数 二.Go开发工具 ...

最新文章

  1. python判断正确错误_第16天:Python 错误和异常
  2. URI和URLConnection类的区别
  3. GoldenGate系统三:trouble shooting and log
  4. android 5.0 下载编译
  5. [ASP.NET Core 3框架揭秘] 文件系统[1]:抽象的“文件系统”
  6. uva 10120——Gift?!
  7. [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第21篇]CRT算法如何提高RSA的性能?
  8. 阿里研发效能数据知多少
  9. 使用VS进行工作流开发系列博客5-Developing Workflows in VS: Part 4 - Design and Bind Your Forms...
  10. 虚拟机安装菜鸟教程(2)——CentOS8系统安装 网络 时间配置
  11. [TC]SRM615 div1 250 AmebaDiv1
  12. 自动生成mybatis代码
  13. 在苹果Mac中将 WEBP 图片转成 JPG、PNG 格式的 2 种方法
  14. java json jquery_JQuery提交JSON string数据
  15. ui-router 之 $state.go
  16. IAST与RASP精选文章汇总
  17. python 大数据入门教程
  18. 全志A64 Android6.0编译
  19. Little_Women6.txt
  20. ESXI8.0一键安装黑群晖DSM7

热门文章

  1. RHadoop的技术性文章
  2. java生成pdf417条形码_python生成417条形码(PDF417)详解
  3. 2021年最优秀的新闻APP或许是这两个(国内没上架)
  4. 《SAP从入门到精通》——第1章 SAP系统基本概念 1.1 SAP公司及其产品介绍
  5. 三星s9Android9内测申请链接,Galaxy S9/S9+国行版进行安卓9.0内测
  6. c#窗体程序 内嵌浏览器
  7. 网易云音乐灰色歌曲在线听的方法
  8. 物联网工程导论笔记一:RFID及二维码技术
  9. 控制理论个人学习笔记-非线性系统理论
  10. excel处理html文件,html网页显示excel表格数据-html读取本地excel文件并展示