标签:数据类型 am C语言 sizeof My Hello size
C语言中的每个变量都有一个关联的数据类型。 每种数据类型需要不同数量的内存,并具有一些可以在其上执行的特定操作。 让我们逐一简单地描述一下:
以下是C语言中使用的一些非常常见的数据类型的示例:
- char:C语言中最基本的数据类型。它存储一个字符,并且几乎在所有编译器中都需要一个字节的内存。
- int:顾名思义,int变量用于存储整数。
- float:它用于存储十进制数(具有浮点值的数字),具有单精度。
- double:它用于以双精度存储十进制数(带浮点值的数字)。
不同的数据类型也有不同的存储数字的范围,这些范围可能因编译器而异。下面是32位gcc编译器上的范围列表以及内存需求和格式说明符。
数据类型 | 内存(字节) | 范围 | 格式说明符 |
---|---|---|---|
short int | 2 | -32,768 to 32,767 | %hd |
unsigned short int | 2 | 0 to 65,535 | %hu |
unsigned int | 4 | 0 to 4,294,967,295 | %u |
int | 4 | -2,147,483,648 to 2,147,483,647 | %d |
long int | 4 | -2,147,483,648 to 2,147,483,647 | %ld |
unsigned long int | 4 | 0 to 4,294,967,295 | %lu |
long long int | 8 | -(2^63) to (2^63)-1 | %lld |
unsigned long long int | 8 | 0 to 18,446,744,073,709,551,615 | %llu |
signed char | 1 | -128 to 127 | %c |
unsigned char | 1 | 0 to 255 | %c |
float | 4 | %f | |
double | 8 | %lf | |
long double | 16 | %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. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。