[C语言学习]C语言程序设计基础(二)

169 阅读7分钟

[C语言学习]C语言程序设计基础(二)

[C语言学习]C语言程序设计基础(一)[点击传送]

大家好这里是三岁,C语言是各类语言的基础,由于个人学习需要特别开设了C语言基础专题,内容不一定深入,都是基础知识,还是白话C语言,最简单的方式带领大家学习不是那么容易理解的C语言!(该系列应该每周末更新直到系列结束,有问题的及时留言,会马上修改!)

基本数据类型

数据类型是按照规定形式表示数据的一种形式,不同类型占据的课件大小也不尽相同。

类型英文名占用空间大小
整型int4B
浮点型float4B
字符型char1B
  • 衍生数据类型

整型(int):
基本整型(int):4B
短整形(short int): 2B
无符号整型(unsigned int):4B
长整型:(long int): 8B

浮点型(float):
单精度浮点型(float):4B
双精度浮点型(double):8B

整型(int

  • 整型数据可以有修饰符shortlong,后面的int可以省略,默认的整型数据常量是int类型。
  • 整型数据可以是十进制(默认)、八进制、十六进制三种。(注:没有二进制)
进制常数类型表达方式举例
十进制(默认)普通表示123
八进制0开头(零)0123
十六进制0x或0X(零x)0x123 或 0X123

八进制:八进制整型常量(常数)必须以0(零)为开头,即0是八进制的前缀。数码为0~7
十六进制:十六进制整型常量(常数)的前缀为0x0X,其数码为0~9,a~fA~F
注:C语言根据前缀区分数据进制,所以不能够写错。

  • 短整形(short)取值范围:
    [-32768 ~ 32767](signed int
    [0 ~ 65535](unsigned int
  • 长整型(long int)表达方式(末尾加上lL):举例123l123L
  • 可以加上unsignedsigned表示是否有符号,如果unsigned为无符号类型,signed为有符号类型。默认是有符号类型。
类型字节数(B)取值范围
int (基本整型)4-231~(231-1)即-2147483648 ~ 2147483647
unsigned int (无符号基本整型)40 ~ (232-1)即 0 ~ 4294967295
short(短整形)2- 215 ~ (215-1) 即 -32768 ~ 32767
unsigned short(无符号短整形)20 ~ (216-1)即 0 ~ 65535
long(长整型)4-231~(231-1)即-2147483648 ~ 2147483647
unsigned long(无符号长整型)40 ~ (232-1)即 0 ~ 4294967295

注:此处长整型和基本整型所占的空间相等(实际情况是不同位数的电脑实际情况不同)

short 并不一定真的”短“,long 也并不一定真的”长“,它们有可能和 int 占用相同的字节数。
在 16 位环境下,short 的长度为 2 个字节,int 也为 2 个字节,long 为 4 个字节。16 位环境多用于单片机和低级嵌入式系统,在PC和服务器上已经见不到了。
对于 32 位的 Windows、Linux 和 Mac OS,short 的长度为 2 个字节,int 为 4 个字节,long 也为 4 个字节。PC和服务器上的 32 位系统占有率也在慢慢下降,嵌入式系统使用 32 位越来越多。
64位系统:
在这里插入图片描述

浮点型

  • 浮点型数据可以带小数,通常情况下默认为double类型
  • 可以加上unsignedsigned表示是否有符号,如果unsigned为无符号类型,signed为有符号类型。默认是有符号类型。
  • 浮点型(float)的表达方式:(在数值末尾加上fF):例如:1.234f1.234F
  • 存储空间和值的范围
类型字节数(B)有效数字取值范围
float460 以及1.2 * 10-38 ~ 3.4 * 1038
double8160 以及2.3 * 10-308 ~ 1.7 * 10308
  • 可以用科学计数法进行表示浮点型。
    把数学中(*10)表示为Ee:
    例:
    1234.56 可以表示为 1.23456e^31.23456E^3
    还可以表示为:123456e^-2123456E^-2
    以此类推。

注:字符串型和字符型的内容请查看 基础(一)(点击跳转)

标识符和关键字

  • 标识符:用于标识的符号语言,常作为:变量、常量、类型、函数、语句等程序成分对象。
  • 标识符只能够用字母、数字、下划线组成其中数字不能够开头。不能够使用关键字和保留字。

在这里插入图片描述
其中defineundefincludeifdefifndefendifline等词虽然不是关键字但是在C语言的预处理中不建议或谨慎使用。

注释

在编程语言中为了解释语句或函数等内容的意思会对代码或代码块进行注释,以增加代码的可读性。每种语言的注释方式不尽相同,让我们一起看看C语言的注释:
单行注释:// (使用双斜杠)只能够用于本行//后所有内容均不会被计算机编译
多行注释:/* …… */ 在省略号内的所有内容都不会被编译,可以用于多行。

#include<stdio.h>
void main()  // 定义空主函数(程序入口)
{
    int add(int x, int y):
       {
       /*
   新建函数完成x+y的功能
       */
       return x+y;
       }

运算符和表达式

  • 变量声明通用表达式:
类型 变量名 [=初始值];

变量名:标识符符号
变量:用于存放数据(就是数据地址及数据预留空间的表示)

基本算数运算符

符号作用
+加法
-减法
*乘法
/除法
%模(取余)

注:除法中接过取决于除数与被除数的类型。
如果除数与被除数都是整数输出的结果也是整数舍弃小数部分。
如果都是整数但是有一方为负数则需要看实际情况,不同设备取舍不同(大多数是向“零”取整)

  • 运算方向:自左向右

自增与自减

C语言提供了极具特色的运算符(单目运算):自增运算和自减运算,作用为使变量增加(减少)1
++i--i 为前置加和前置减(先运算后输出)
i++i-- 为后置加和后置减(先输出后运算)

++i 这个就是先运算运算后再输出(白话:出门前先完成加1再出门)
i++这个是先进行输出再进行运算(白话:出门比较急等回来以后再加1或者可以理解为出门的时候是没有变的,刚刚出门就加1了)

注:自增和自减只能够用于变量,不能够用于常量和表达式。

赋值运算符

  • 赋值运算符:赋值符号"="就是将一个数据赋值给另一个变量
变量  <赋值运算符>  表达式

赋值运算方向:自右向左

  • 复合运算符
运算符表达式示例运算关系
+=a+=3a=a+3
-=a-=3a=a-3
*=a*=3a=a*3
/=a/=3a=a/3
%=a%=3a=a%3

今天的资料就整理到这里了,非常感大家的关注,如果好就来个一键三连吧!
[C语言学习]C语言程序设计基础(三)[点击传送]