8种机械键盘轴体对比

本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?

本专题博客主要内容为本人在C语言学习过程中遇到的主要问题和C语言相关知识点的讲解,是系统性的技术学习博客,使用的环境为VS2017。本教程本着先浅后深的学习理念由浅至深进行学习,并且每一章都会附有代码及案例讲解。在学习过程中如果读者有相关问题请移步我的私人博客,或发送问题到我的邮箱或者QQ一起探讨!

第一章 初识C语言

第1节

为什么学习C语言

C语言是一门通用计算机编程语言,广泛用于底层开发。C语言虽然并不是最完美的语言,但是可以说目前很多的高级编程语言的前身都是C语言,所以C语言绝对是开发学习中的第一门语言,他可以帮助你很好的理解计算机原理,理解计算机内存管理。而且同时C语言有着简介的语法,十分简单易上手,但是想要精通使用C语言还需要长期的学习和锻炼才能掌握。目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC) 发布的 C11标准是C语言的第三个官方标准,也是C语言最新标准,在以前C语言版本基础上加上了很多新的语法,而本系列博客也会以C11标准进行C语言讲解。

第一个C语言项目

1、接下来我会在VS2017的环境中展示第一个C语言项目。首先是进行项目创建。

1)点击新建->项目

2)在左侧边框栏选择VisualC++选择右侧边框栏的空项目

3)右键点击源文件选择添加->点击新建项->添加

这样既可创建好一个CPP源文件

虽说我们写的是C语言但是创建CPP源文件照样是可以写C语言代码的,互不影响,如果你想创建一个C语言源文件在第三部点添加之前把文件名称后缀改为 .c文件既可!!

2、在创建好源文件后我们就可以正式开始快乐的敲代码啦!1

2

3

4

5

6#include //添加头文件

int main()//主函数,函数入口

{

printf("This is my world!!n");//输出“This is my world!!”

return 0;//主函数返回值,可以忽略这一条语句

}

上面这一段代码的主要作用就是实现在屏幕上打印一句话的功能。接下来我给大家注意讲解每一行代码的含义。

第一行代码是引用了一个标准输入输出流的头文件,这个可以说是写C语言代码必备的。可能有小伙伴会有疑问,这句话有什么用?其实写代码的过程中并不是所有代码都由我们自己写的,在编译器中会实现留有很多的代码都是由大佬们实现写好留下来的,而这些代码都会被封装为一个又一个的头文件,提供给开发者使用,这样会给开发者带来不小的便利,比如说我们下面printf()这个函数就是这个头文件所提供给我们的。

第二行代码包括下面的一对大括号都被成为主函数。主函数是一个程序的入口函数,程序的启动和运行都会先从主函数开始,所以在一个程序中主函数是必不可少的。

主函数里面的函数printf() 这个函数的主要功能是将括号里面的内容输出到屏幕上,在这个函数中大家可以看到目前有一个参数,是一个由双引号括起来的字符串(字符串的概念之后会学习),字符串里面的内容大家可以随意改动,输出自己想要的内容。

还可以注意到还有一个语句return 0这句话是函数的返回值。主函数是可以有返回值的,但是这句话不写编译器也不会报错,之后学了函数的知识后大家会对返回值有更深的理解。

在写完了以上这几行代码后就可以编译运行了,大家可以使用快捷键ctrl+f5进行编译和运行,或者点击调试里面的开始执行(不调试) 进行执行。

在运行后大家可能会发现程序运行一闪而过,根本无法看到结果,这是因为程序运行太快了并且没有暂停所以程序结束了,所以之后我们将代码改成这个样子让他暂停下。1

2

3

4

5

6

7

8#include //添加头文件

#include

int main()//主函数,函数入口

{

printf("This is my world!!n");//输出“This is my world!!”

system("pause");//暂停语句

return 0;//主函数返回值,可以忽略这一条语句

}

可以注意到我们在第6行加了个system语句,这个语句的作用就是让程序暂停运行。改完之后大家可以重新编译运行下,就可以看到运行的结果了。

数据类型

1、为什么会有不同的数据类型?

这个问题其实很简单,因为众所周知程序在运行时会将数据暂时存储在内存中以方便程序使用,但是在系统给程序分配内存空间是就会产生问题,为了解决这个问题我该分配多少内存给它呢?多了的话浪费资源,少了的话不够用,而且不同的数据不可能使用同一种方式存储(例如字符和整形以及浮点型的存储方式都有很大的区别),于是在编程语言设计之初,不同的数据类型就产生了。

2、在C语言中常用的数据类型一共有7种,接下来统一给大家介绍,这在大家之后的编程中是必不可少的。1

2

3

4

5

6

7char //字符型:1字节

short //短整型:2字节

int //整型:4字节

long //长整型:4字节

long long //更长整型:8字节

float //单精度浮点型:4字节

double //双精度浮点型:8字节

每个不同的数据类型都有不同的所占空间大小,而数据在内存中都是以二进制形式进行存储的。举个例子,int型占4个字节,一个字节是8个bit,就是4 * 8 = 32 个二进制位,所能存储的数据大小(默认无符号)就是从0 ~ 2 ^ 32 - 1大概就是42亿,依次类推。要说明的是整形是存储整数的无法处理小数,而浮点型是专门处理小数的(自然也能处理整数),而字符型则是处理字符的。数据在内存中存储方式也随着数据类型的不同而不尽相同,其中整形的存储是根据补码进行存储,而字符型则是根据ASCII码进行换算然后进行存储。

所谓ASCII码不过是将键盘上的每一个字符都根据序号进行排序,每一个字符都有着自己编号,而进行内存存储时与ASCII表进行比对,找到自己的编号,然后将字符型转换为整形数字然后再进行存储。

变量、常量

1、所谓变量就是可以改变的量,而常量则是无法被改变的值。

2、定义变量的方式也十分简单。1

2

3int age = 10;

float weight = 45.5f;

char ch = 'w';

大家可以看出来定义变量不过是数据类型(空格)变量名称即可定义。而定义一个变量后最立刻对它进行初始化赋值,否则变量会存储一个随机的值,这十分不便于变量管理。在定义浮点型变量时如果初始化内容后不加f则默认为双精度浮点型。

3、变量的分类大致可以分为:局部变量和全局变量,每个变量都有着自己的作用域和生命周期。局部变量的作用域和生命周期都是大括号,全局变量的作用域和生命周期则是当前整个程序

具体可以参考以下代码段:1

2

3

4

5

6

7

8

9

10

11#include //添加头文件

#include

int global = 2019;//全局变量

int main()//主函数,函数入口

{

int local = 2018;//局部变量

//下面定义的global不会有问题

int global = 2010;

printf("global = %dn", global);

system("pause");

}

值得一提的是全局变量在已经定义的前提下,定义相同变量名的局部变量不会报错,那么在局部变量的作用域内打印局部变量会出现什么结果呢?执行过大家肯定会看到,global = 2010。这是因为在局部变量作用域内局部变量会覆盖同名称的全局变量。

4、常量则是不能被改变的量,在C语言中常量分为字面常量、const修饰的常变量、#dfine定义的标识符常量、枚举常量。1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16#include //添加头文件

#include

#define PIE 3.14

enum Sex//枚举常量

{

MALE,

FEMALE,

SECRET,

};

int main()//主函数,函数入口

{

3.14;//字面常量

1000;//字面常量

const float pai = 3.14f;//const修饰的常量

system("pause");

}

关于常量如代码演示,其中较为特殊的是enum常量,枚举常量默认元素从0开始赋值,是快速定义连续常量的一种方式。#define所用到的宏定义只是单纯的文本替换,具体使用之后会详细讲解。

c语言整形变浮点型报错,【C语言】第一章相关推荐

  1. c语言 system(pause)为什么报错,c语言-指针-分配内存和赋值需要注意的

    每次使用指针都会遇到大大小小的问题,每次都要翻开资料琢磨错在哪,寻根究底还是对指针还是没有完全掌握.本文为了加深映像,避免以后犯类似的错误,特地做了一些实验. 1.字符串指针变量赋值 #include ...

  2. c语言未定义main报错,C语言编译器的错误信息

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Not a valid expression format type 不合法的表达式格式 Not an allowed type 不允许使用的类型 Num ...

  3. c语言输入float就报错,c语言 输入float类型 出错处理

    要对float c进行处理.如果输入的是字符型数据或者其他非浮点数,想实现出错报告的功能(能要求用户重新输入更好).看过perror,exit,strerror之类,不会.以下是部分代码: pol * ...

  4. R语言-处理异常值或报错的三个示例

    R语言-处理异常值或报错的三个示例 参考文章: (1)R语言-处理异常值或报错的三个示例 (2)https://www.cnblogs.com/awishfullyway/p/6611690.html ...

  5. R语言ggplot绘制地图-报错汇总(一)

    R语言ggplot绘制地图-报错汇总 报错两例 报错1: 报错2: 报错两例 在用ggplot绘制地图时出现了两个报错,网上搜索了没有相关说明,虽然解决方式很蠢,但是可能对于出现同样报错的人会有帮助, ...

  6. C语言中几种报错类型的解决方案

    C语言中几种报错类型的解决方案 声明:本人小白,第一次写博客,由于查报错原因比较困难,为了方便记下自己敲代码遇到的问题而随笔写下,文中有诸多错误,希望路过的大佬能够对我的文章批评指正.我也会不断修改完 ...

  7. c语言浮点型与整形比较大小,C语言整形与浮点型转化过程中的精度损失

    本篇文章主要解决的问题是C语言整形与浮点型转化过程中的精度损失从而容易产生bug,对于浮点和整形的相关内容大家可以参考下面两篇文章.,这里就不再赘叙了. 1整形与浮点转化的精度损失参考小程序:1#in ...

  8. c语言枚举变量自增报错,C_数据结构与算法(1):C语言基础

    C_数据结构与算法(一):C语言基础 致初学者的我:一切都是由浅入深. 每种语言都有每种语言的特性,基本的特性是相同的,下面依照惯例写hello world,相关编译后面再介绍. // C语言用&qu ...

  9. c语言 __at定位编译报错,david

    标签: 博客七周年 我的博客今天2岁137天了,我领取了徽章. 2010.08.01,我在新浪博客安家. 2010.08.05,我写下了第一篇博文:<IC翻新货识別法>. 至今,我的博客共 ...

最新文章

  1. JRuby:谁说鱼与熊掌不可兼得
  2. Javascript学习--------详解window窗口对象
  3. PHP之提取多维数组指定列的方法
  4. python3哪个教程好-Python3 教程
  5. python处理excel表格实例-python2 对excel表格操作完整示例
  6. python 关闭 os.popen()
  7. PHP Token(令牌)设计
  8. Qt工作笔记-QVector下标访问和迭代访问效率实践(大跌狗眼)
  9. 微软官方上线 Python 教程
  10. 使用Spring Boot日志框架在已有的微服务代码中添加日志功能
  11. 368计算机毕业设计
  12. 51单片机8路抢答器c语言,51单片机8路抢答器
  13. Excel制作抽奖小程序
  14. springboot实现微信退款
  15. Python爬取B站柯南弹幕+Gephi梳理主线剧情
  16. PPPOE拨号之四:juniper netscreen 防火墙 PPPOE拨号配置
  17. 通达云OA被阿里云列为企业办公首推应用
  18. Android——一个简单的音乐APP(二)
  19. 走到最后,摩拜连姓名都不能拥有?
  20. 书单分享:阅读应该是一种享受

热门文章

  1. html页面编码规则,HTML:网站通用代码规范
  2. Cyanine5 azide是一种花青素荧光染料,CAS:2183440-50-6
  3. 第二届赣网杯WEB第一题WP
  4. 计算机考研数一、408复习心得
  5. 文献导读—绪论(1)
  6. 机器学习中怎样的特征才是好特征
  7. Game Plug-ins(3)
  8. 有1000瓶药水,其中只有一瓶有毒。现在用小白鼠进行实验,小白鼠只要服用任意量有毒药水就会在24小时内死亡。问至少要用多少只小白鼠进行实验才能检测出哪瓶药水有毒?
  9. GMIC2013:凡客会有什么新动作?
  10. 使用CEGUI读取Torchlight(火炬之光)的UI资源