在程序的世界中,可以让计算机按照指令做很多事情,

如进行数值计算、图像显示、语音对话、视频播放、天文计算、发送邮件、游戏绘图以及任何我们可以想象到的事情。

要完成这些任务,程序需要使用数据,即承载信息的数字与字符。

在计算机中,数据的性质和表示方式可能不同。

所以需要将相同性质的数据归类,并用一定数据类型描述。

任何数据对用户都呈现常量和变量两种形式。

常量是指程序在运行时其值不能改变的量。

常量不占内存,在程序运行时它作为操作对象直接出现在运算器的各种寄存器中。

变量是指在程序运行时其值可以改变的量。变量的功能就是存储数据。

例子:

#include<stdio.h>
int main()
{
int year;
year=2014;
printf("Welcome to www.dotcpp.com!\n");
return 0;
}

其中year是一个int类型的变量,而2014是常量,即一个数字。

变量的定义:

在程序中使用的变量名、函数名、标号等统称为标识符。

除库函数的函数名由系统定义外,其余都由用户自定义。

C规定,标识符只能是字母(A~Z,a~z)、数字(0~9)、下划线(_)组成的字符串,并且其第一个字符必须是字母或下划线。

且不能与C语言的关键字重名(关键字见下一节)。 

此外,在使用标识符时还必须注意以下几点:

- 标准C不限制标识符的长度,但它受各种版本的C 语言编译系统限制,同时也受到具体机器的限制。

  例如在某版本C 中规定标识符前八位有效,当两个标识符前八位相同时,则被认为是同一个标识符。

- 在标识符中,大小写是有区别的。例如CLANG和Clang 是两个不同的标识符。

- 标识符虽然可由程序员随意定义,但标识符是用于标识某个量的符号。

  因此,命名应尽量有相应的意义,以便阅读理解,做到“顾名思义”。


在程序的世界中,承载一系列的信息的数字和字符都属于数据类型,但计算机需要一种方法来区别和使用这些不同的类型。

具体的,C通过识别一些基本的数据类型做到这些。

如果是常量数据,编译器一般通过其书写来辨认其类型,比如:123是整数,3.14浮点数(即小数)。

而变量则需要在声明语句中指定其类型,稍后会做详细介绍。

我们先了解C语言的基本数据类型。

基本数据类型

C语言的基本数据类型为:整型、字符型、实数型。

这些类型按其在计算机中的存储方式可被分为两个系列,即整数(integer)类型和浮点数(floating-point)类型。

这三种类型之下分别是:

short、int、long、char、float、double

这六个关键字再加上两个符号说明符signed和unsigned就基本表示了C语言的最常用的数据类型。

下面列出了在32位操作系统下 常见编译器下的数据类型大小及表示的数据范围:

在认识了这么多的数据类型之后,我们就可以根据不同的实际情况,在不同的问题中选择最符合的数据类型来使用。

举个例子,如要计算两个数的和,我可以采用int类型定义两个变量,然后输出

int a=24000,b=12345;//定义两个变量a,b并赋值
int c; //定义变量c用于计算a+b的和
c=a+b;
printf("a+b = %d",c);//输出结果

没错,可能您已经考虑到,如果a+b的和超出int类型的最大范围时的问题。

这个就需要您根据不同的作用选择不同的数据类型存储了。

关键字

在c语言中,为了定义变量、表达语句功能和对一些文件进行预处理,还必须用到一些具有特殊意义的字符,这就是关键字,

我们用户自己定义的变量函数名等要注意不可以与关键字同名。

【Tutorial C】03 数据类型、变量的更多相关文章

  1. JAVA数据类型,变量,转换,常量,运算符

    java数据类型: Java基本类型共有八种,基本类型可以分为三类: 1.字符类型char,用单引号赋值 2.布尔类型boolean 3.数值类型byte.short.int.long.float.d ...

  2. Python 输入输出 数据类型 变量

    python输入输出 数据类型 变量 输入输出 print()在Python3中是函数 >>>print('hello world') #print注意print前面不要有任何空格 ...

  3. Java 数据类型 & 变量与常量 & 注释

    一.数据类型 1.数据类型分类 Java 的数据类型分为两大类: 基本数据类型:整数.浮点数.字符型.布尔型 引用数据类型(对象类型):类.数组,字符串.接口等. 2.基本数据类型 四类八种基本数据类 ...

  4. Java ——关键字 数据类型 变量 常量

    本节重点思维导图 Java程序结构 public class 类名 { public static void main(String[] args){ //……语句 } } 一门语言是由以下各种元素组 ...

  5. 深入理解PHP内核(五)变量及数据类型-变量的结构和类型

    原文链接:http://www.orlion.ga/238/ 编程语言的类型可以分为强类型和弱类型两种,PHP是弱类型语言,但是C语言是强类型语言.在官网PHP实现内部,所有变量使用同一种数据结构(z ...

  6. 【C】 03 - 数据类型

    程序说到底就是对数据的处理,所以首先要弄清楚需要处理哪些数据,计算机如何存储这些数据.C语言根据需要,抽象出了一些基本数据类型和衍生数据类型.这些可以满足大部分需求,更复杂的抽象数据类型亦可通过它们来 ...

  7. javascript 数据类型 变量 类型转换运算符

    数据类型: 1.字符串(被双引号所包含的内容),小数,整数,日期时间,布尔型等. 2.变量: 都是通用类型的var,    定义一个变量格式:var a: 3.类型转换: 分为自动转换和强制转换,一般 ...

  8. [Hive - Tutorial] Type System 数据类型

    数据类型Type System Hive supports primitive and complex data types, as described below. See Hive Data Ty ...

  9. C语言基础学习基本数据类型-变量的输出与输入

    变量的输出 变量如何输入输出呢?实际上,在这之前你已经使用过输出语句(printf语句)了,我们可以使用printf来执行输出. printf语句的使用方法如下: printf(格式控制字符串, 数据 ...

  10. C语言基础学习基本数据类型-变量和常量

    变量和常量 什么是变量和常量?有些数据在程序运行前就预先设定,并在运行过程中不发生变化,称之为常量:有些数据在程序运行中可能发生变化或被赋值,称之为变量. 使用变量前必须先声明一个变量.变量定义的语法 ...

随机推荐

  1. 鼠标悬浮显示鼠标停留数据的内容 elementui + vue

    先看效果图 直接上代码 <el-tabs v-model="activeName" @tab-click="handleClick"> <el ...

  2. 此计算机上不存在虚拟机管理服务(VMMS)。请确保已启用“Hyper-V 服务”功能。

    此计算机上不存在虚拟机管理服务(VMMS).请确保已启用"Hyper-V 服务"功能. 解决方法: 在主板BIOS 里开启VT. Intel Virtualization Tech ...

  3. nginx目录索引、文件下载服务

    目录索引.文件下载服务 官网文档 http://nginx.org/en/docs/http/ngx_http_autoindex_module.html 利用nginx实现文件下载服务器 1.参数说 ...

  4. vue bus传参

    新建一个js文件,命名为bus.js.bus.js文件的内容为: import Vue from 'vue' const bus = new Vue() export default bus 页面de ...

  5. python allure将生成报告和打开报告写到命令文件,并默认使用谷歌打开

    背景: 使用python + pytest +allure,执行测试用例,并生成测试报告: allure报告要从收集的xml.json等文件,生成报告,不能直接点击报告的index.html,打开的报 ...

  6. Xcode编译错误看不到错误详情

    问题描述 Xcode提示错误后想详细看报错信息无论如何双击都不见弹出错误详情. 解决办法 不知道是bug还是苹果婊又自作主张改变用户习惯了,需要点击navigator最右边的一个图标,在里面找到相应的 ...

  7. Android 中的property_get/property_set

    Android 中的property_get/property_set 背景 在安卓中调试Linux驱动层以及应用层之间的一些功能时,需要获取一些属性. 参考: https://blog.csdn.n ...

  8. Nginx负载配置

    目录 Nginx 负载均衡笔记 1. 概述 1.1 Nginx 简介 1.2 负载均衡概述 2. 四层负载均衡(传输层) 2.1 工作原理 2.2 特点 2.3 优缺点 优点 缺点 2.4 示例场景 ...

  9. SpringCloud学习篇

    什么是SpringCloud Spring cloud 流应用程序启动器是基于 Spring Boot 的 Spring 集成应用程序,提供与外部系统的集成.Spring cloud Task,一个生 ...

  10. documen.write 和 innerHTML 的区别?

    document.write只能重绘整个页面,innerHTML可以重绘页面的一部分. 1. ducument.write使用举例html文档: <!doctype html> <h ...