- Data Type
- Floating points Concept
- sizeof()
Data Type
| Data Type | Size (bytes) | at least | Range (MIN ~ MAX) | Format Specifier | |
|---|---|---|---|---|---|
| limits.h | |||||
| char | 1 | 1 | -128 ~ 127 | -27 ~ (27-1) | %c, %hhi(num) |
| unsigned char | 1 | 1 | 0 ~ 255 | 0 ~ (28-1) | %c, %hhu(num) |
| short | 2 | 2 | -32768 ~ 32767 | -215 ~ (215-1) | %hi |
| unsigned short | 2 | 2 | 0 ~ 65535 | 0 ~ (216-1) | %hu |
| int | 4 | 2 | -2147483648 ~ 2147483647 | -231 ~ (231-1) | %i, %d |
| unsigned int | 4 | 2 | 0 ~ 4294967295 | 0 ~ (232-1) | %u |
| long (=long int) |
8 | 4 | -9223372036854775808 ~ 9223372036854775807 |
-263 ~ (263-1) | %li |
| unsigned long | 8 | 4 | 0 ~ 18446744073709551615 | 0 ~ (264-1) | %lu |
| long long | 8 | 8 | -9223372036854775808 ~ 9223372036854775807 |
-263 ~ (263-1) | %lli |
| unsigned long long | 8 | 8 | 0 ~ 18446744073709551615 | 0 ~ (264-1) | %llu |
| float.h | |||||
| float | 4 | 1.175494e-38 ~ 3.402823e+38 | FLT_DIG: 6 | %f,%F, %e,%E,%g,%G, %a,%A |
|
| double | 8 | 2.225074e-308 ~ 1.797693e+308 | DBL_DIG: 15 | %lf,%lF, %le,%lE,%lg,%lG, %la,%lA |
|
| long double | 16 | 3.362103e-4932 ~ 1.189731e+4932 | LDBL_DIG: 18 | %Lf,%LF, %Le,%LE,%Lg,%LG, %La,%LA |
- pointer size = 8 bytes, (no matter which data type.)
- Above was checked on
gcc (Ubuntu 5.4.0-6ubuntu1~16.04.9) 5.4.0 20160609.
@TODO
- sizeof(int) <= sizeof(long int) <= sizeof(long long int)
- sizeof(float) = 4, sizeof(double)=8 ??
- http://joequery.me/notes/learning-c-2/
- nctu high school chap4. ppt
floating point
- nctu high school chap4. ppt
sizeof()
- operator
- return size_t:
%zu(C99?)