aboutsummaryrefslogtreecommitdiff
path: root/ch2/2-01_limits.c
diff options
context:
space:
mode:
authorzlg <zlg@zlg.space>2016-06-16 10:15:33 -0700
committerzlg <zlg@zlg.space>2016-06-16 10:15:33 -0700
commitf8d9ff23eb8d3e3286ff5cf4d5f9493532991bb7 (patch)
treee37b327d7f93435e93a57427600d2b91fbb0cd87 /ch2/2-01_limits.c
parentSolve Exercise 7-2: Format arbitrary input (diff)
downloadknr-f8d9ff23eb8d3e3286ff5cf4d5f9493532991bb7.tar.gz
knr-f8d9ff23eb8d3e3286ff5cf4d5f9493532991bb7.tar.bz2
knr-f8d9ff23eb8d3e3286ff5cf4d5f9493532991bb7.tar.xz
knr-f8d9ff23eb8d3e3286ff5cf4d5f9493532991bb7.zip
The massive astyle sweep!
Code style should be consistent now. All future commits will be run through astyle or they will be amended.
Diffstat (limited to 'ch2/2-01_limits.c')
-rw-r--r--ch2/2-01_limits.c21
1 files changed, 0 insertions, 21 deletions
diff --git a/ch2/2-01_limits.c b/ch2/2-01_limits.c
index 06d7450..2e8dff4 100644
--- a/ch2/2-01_limits.c
+++ b/ch2/2-01_limits.c
@@ -31,96 +31,75 @@ int main() {
float fl, fla, fll;
double db, dba, dbl;
long double ldb, ldba, ldbl;
-
printf("Let's compute the minimums and maximums of each type!\n");
uc = sc = us = ss = ui = si = ul = sl = sll = ull = 0;
fl = fla = fll = db = dba = dbl = ldb = ldba = ldbl = 0.0;
-
/* Characters */
-
sc++;
while (sc * 2 > sc) {
sc = sc * 2 + 1;
}
-
printf("`signed char` maximum: %d\n", sc);
sc++;
printf("`signed char` minimum: %d\n", sc);
uc--;
printf("`unsigned char` maximum: %u\n", uc);
-
/* Short ints */
-
ss++;
while (ss * 2 > ss) {
ss = ss * 2 + 1;
}
-
printf("`signed short` maximum: %d\n", ss);
ss++;
printf("`signed short` minimum: %d\n", ss);
us--;
printf("`unsigned short` maximum: %u\n", us);
-
/* Integers */
-
si++;
while (si * 2 > si) {
si = si * 2 + 1;
}
-
printf("`signed int` maximum: %d\n", si);
si++;
printf("`signed int` minimum: %d\n", si);
ui--;
printf("`unsigned int` maximum: %u\n", ui);
-
/* Long ints */
-
sl++;
while (sl * 2 > sl) {
sl = sl * 2 + 1;
}
-
printf("`signed long` maximum: %li\n", sl);
sl++;
printf("`signed long` minimum: %li\n", sl);
ul--;
printf("`unsigned long` maximum: %lu\n", ul);
-
/* Long long ints */
-
sll++;
while (sll * 2 > sll) {
sll = sll * 2 + 1;
}
-
printf("`signed long long` maximum: %lli\n", sll);
sll++;
printf("`signed long long` minimum: %lli\n", sll);
ull--;
printf("`unsigned long long` maximum: %llu\n", ull);
-
/* Floats */
while (fl == 0.0) {
fll = fla;
fla = fla + 1111e28;
fl = (fl + fla) - fla;
}
-
printf("`float` maximum: %e\n", fll);
printf("`float` minimum: %e\n", 0 - fll);
-
/* Doubles */
while (db == 0.0) {
dbl = dba;
dba = dba + 1111e297;
db = (db + dba) - dba;
}
-
printf("`double` maximum: %e\n", dbl);
printf("`double` minimum: %e\n", 0 - dbl);
-
printf("\nNow, let's cheat and use the helpful headers!\n");
printf("`char`s go from %d to %d (unsigned, up to %u)\n", SCHAR_MIN, SCHAR_MAX, UCHAR_MAX);
printf("`short`s go from %d to %d (unsigned, up to %u)\n", SHRT_MIN, SHRT_MAX, USHRT_MAX);