ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

C语言中的数据类型

2021-05-03 19:59:14  阅读:135  来源: 互联网

标签:数据类型 am C语言 sizeof My Hello size


    C语言中的每个变量都有一个关联的数据类型。 每种数据类型需要不同数量的内存,并具有一些可以在其上执行的特定操作。 让我们逐一简单地描述一下:
    以下是C语言中使用的一些非常常见的数据类型的示例:

  • char:C语言中最基本的数据类型。它存储一个字符,并且几乎在所有编译器中都需要一个字节的内存。
  • int:顾名思义,int变量用于存储整数。
  • float:它用于存储十进制数(具有浮点值的数字),具有单精度。
  • double:它用于以双精度存储十进制数(带浮点值的数字)。

    不同的数据类型也有不同的存储数字的范围,这些范围可能因编译器而异。下面是32位gcc编译器上的范围列表以及内存需求和格式说明符。

数据类型内存(字节)范围格式说明符
short int2-32,768 to 32,767%hd
unsigned short int20 to 65,535%hu
unsigned int40 to 4,294,967,295%u
int4-2,147,483,648 to 2,147,483,647%d
long int4-2,147,483,648 to 2,147,483,647%ld
unsigned long int40 to 4,294,967,295%lu
long long int8-(2^63) to (2^63)-1%lld
unsigned long long int80 to 18,446,744,073,709,551,615%llu
signed char1-128 to 127%c
unsigned char10 to 255%c
float4%f
double8%lf
long double16%Lf

    我们可以使用sizeof()运算符来检查变量的大小。 有关各种数据类型的用法,请参见以下C程序 :

#include <stdio.h>
int main()
{
	int a = 1;
	char b = 'G';
	double c = 3.14;
	printf("Hello World!\n");

	// printing the variables defined
	// above along with their sizes
	printf("Hello! I am a character. My value is %c and "
		"my size is %lu byte.\n",
		b, sizeof(char));
	// can use sizeof(b) above as well

	printf("Hello! I am an integer. My value is %d and "
		"my size is %lu bytes.\n",
		a, sizeof(int));
	// can use sizeof(a) above as well

	printf("Hello! I am a double floating point variable."
		" My value is %lf and my size is %lu bytes.\n",
		c, sizeof(double));
	// can use sizeof(c) above as well

	printf("Bye! See you soon. :)\n");

	return 0;
}

    输出:

Hello World!
Hello! I am a character. My value is G and my size is 1 byte.
Hello! I am an integer. My value is 1 and my size is 4  bytes.
Hello! I am a double floating point variable. My value is 3.140000 and my size i
s 8 bytes.
Bye! See you soon. :)
参考文档

[1]Ayush Jaggi.Data Types in C[EB/OL].https://www.geeksforgeeks.org/data-types-in-c/,2020-11-03.

标签:数据类型,am,C语言,sizeof,My,Hello,size
来源: https://blog.csdn.net/zsx0728/article/details/116379025

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有