C语言教程-基本数据类型

什么是基本数据类型

基本数据类型是C语言内置的一些类型,其共有三类,分别为整型,实型,字符型。这三种类型可用来存储不同的数据,为程序提供最基本的运算等操作。本节内容将讲解不同的数据类型以及其在标准输入输出中所使用的格式控制符。

整型

在C语言里,整型有以下几种不同的选择。以下描述内容中占用内存的情况均为64位平台上的情况。

类型描述格式控制符
int最常用的整型,32位%d,%o,%x,%X,%u
short,short int16位,在所有平台上均不大于int%hd,%ho,%hx,%hX,%hu
long,long int**32位,在所有平台上均不小于int%ld,%lo,%lx,%lX,%lu
long long,long long int64位,在所有平台上均不小于long long%lld,%llo,%llx,%llX,%llu
char8位,一般用于处理字符,也可以作为整型使用%hhd,%hho,%hhx,%hhX,%hhu

整型都可以使用unsigned修饰为无符号或使用signed修饰为有符号,除char之外,默认均为有符号。

实型

在C语言里,实型有以下几种不同的选择。以下描述内容中占用内存的情况均为64位平台上的情况。

类型描述格式控制符
float32位%e %E %f %F %g %G %a %A
double64位%le %lE %lf %lF %lg %lG %la %lA
long double64位%le %lE %lf %lF %lg %lG %la %lA

针对实型,其内容除了正常的实数之外,还可能为infnannan(snan)nan(ind)

字符型

char在C语言中用来代表字符型,其格式控制符为%cchar除了用来处理字符之外,还可以用来处理整型。

字符串

C语言使用以'\0'作为结尾的字符数组来保存字符串,其格式控制符为%s

示例代码
#include <stdio.h>

int main()
{
    // 整型
    int a;
    short b;
    long c;
    long long int d;
    char e;
    scanf("%d %hd %ld %lld %hhd", &a, &b, &c, &d, &e);
    printf("%d %hd %ld %lld %hhd\n", a, b, c, d, e);
    printf("%o %ho %lo %llo %hho\n", a, b, c, d, e);
    printf("%x %hx %lx %llx %hhx\n", a, b, c, d, e);
    printf("%X %hX %lX %llX %hhX\n", a, b, c, d, e);
    printf("%u %hu %lu %llu %hhu\n", a, b, c, d, e);
    printf("%d,%d,%d,%d,%d\n", sizeof(a), sizeof(b), sizeof(c), sizeof(d), sizeof(e));
    // 实型
    float f;
    double g;
    long double h;
    scanf("%f", &f);
    printf("%e %E %f %F %g %G %a %A\n", f, f, f, f, f, f, f, f);
    scanf("%lf", &g);
    printf("%le %lE %lf %lF %lg %lG %la %lA\n", g, g, g, g, g, g, g, g);
    scanf("%lf", &h);
    printf("%le %lE %lf %lF %lg %lG %la %lA\n", h, h, h, h, h, h, h, h);
    printf("%d,%d,%d\n", sizeof(f), sizeof(g), sizeof(h));
    // 字符型
    char i;
    scanf("%c", &i);
    printf("%c\n", i);
    printf("%d\n", sizeof(i));
    // 字符串
    char j[256];
    scanf("%s", j);
    printf("%s\n", j);
    return 0;
}

上述代码中,sizeof关键字可用来获取数据类型占用内存的大小。

其它参考内容

微软:格式规范语法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值