C学习笔记 – 数据类型

  • A+
所属分类:C/C++学习笔记
摘要这一篇文章是我自己看C的时候记录的笔记,简单记录一下C中的基本数据类型,包括整型,浮点型和字符型。

前言

最近在做安全实验的时候好多代码是用c写的,于是就想回顾一下,并且做一下记录,方便自己之后的查阅,于是就有了这一系列的文章。

这里就会记录一些学习过程的代码,可能没有什么完整的逻辑,主要是我自己看的。

说明

文章可能会没有什么说明,我会把所有注意点都写在注释里面;会在文章的前面写一下会出现的内容,作为目录,方便自己之后的查找。

本文的主要内容

这一篇会介绍一下C中常见的数据类型,主要的数据类型如下图所示:

C学习笔记 - 数据类型

这一篇会涉及到的是:

  • 数值类型(整型 : int,浮点型 : float)
  • 字符类型 : char

下面就直接看一下代码的书写;

源代码

注意C中每句语句结束都需要以 结尾。

  1. #include<stdio.h>
  2. /*
  3.     关于数据结构的一些介绍
  4.     这一部分介绍:常见的几种数据类型,包括int,float,char 
  5. */
  6. int main(){
  7.     /*
  8.     介绍整型 : int,short,long
  9.     */
  10.     int a,b,c;
  11.     a = 1;
  12.     b = 2;
  13.     c = a + b;
  14.     printf("a is %d, b is %d and c is %d.\n",a,b,c); // 格式输出函数 printf
  15.     // >> a is 1, b is 2 and c is 3.
  16.     /*
  17.     除了int外,还有short和long 
  18.     每种数据类型系统分配的大小不同
  19.     int为4字节,short为2字节,long为8字节 
  20.     */
  21.     printf("int:%d,short:%d,long:%d.\n",sizeof(int),sizeof(short),sizeof(long));
  22.     // >> int:4,short:2,long:4
  23.     // -----------------------------
  24.     /*
  25.     介绍浮点型 : float,double,long double
  26.     */
  27.     // float有效位数7, double有效位数16, long double有效位数19
  28.     // 下面看一下数值溢出的情况 
  29.     float d_float = 123456.789e5;
  30.     float f_float = d_float + 20;
  31.     printf("%f + 20 == %f.\n",d_float,f_float);
  32.     // >>12345678848.000000 + 20 == 12345678848.000000.=> 这个计算结果是错误的 
  33.     // 使用double类型可以解决这个问题 
  34.     double d_double = 123456.789e5;
  35.     double f_double = d_double + 20;
  36.     printf("%f + 20 == %0.8f.\n",d_double,f_double);
  37.     // >> 12345678900.000000 + 20 == 12345678920.00000000. => 这个计算结果是正确的,同时%0.8f表示控制输出位数
  38.     // ------------------------------
  39.     /*
  40.     介绍字符型 : char (分配一个字节)
  41.     */
  42.     char g_char='a',h_char=121; // 可以直接用''进行定义,也可以使用ASCII的值进行定义 
  43.     printf("字符型分配大小 : %d. \n", sizeof(g_char));
  44.     // >> 字符型分配大小 : 1.
  45.     printf("输入字符和其对应的ASCII码:%c:%d, %c:%d\n",g_char,g_char,h_char,h_char);
  46.     // >> 输入字符和其对应的ASCII码:a:97, y:121
  47.     return 0;
  48. }

编译运行后结果如下:

C学习笔记 - 数据类型

只是我自己学习过程中的一些记录,这样方便我之后再看,所以就这么写了。

  • 微信公众号
  • 关注微信公众号
  • weinxin
  • QQ群
  • 我们的QQ群号
  • weinxin
王 茂南

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: