From 046c70cd0a4106e9cce9e2faaa65bd71fa01eb15 Mon Sep 17 00:00:00 2001 From: EliteTK Date: Thu, 13 Nov 2014 19:14:43 +0000 Subject: cap.c: new; casting.c: more tests --- cap.c | 33 +++++++++++++++++++++++++++++++++ casting.c | 44 ++++++++++++++++++++++++++++++++++---------- 2 files changed, 67 insertions(+), 10 deletions(-) create mode 100644 cap.c diff --git a/cap.c b/cap.c new file mode 100644 index 0000000..d985e91 --- /dev/null +++ b/cap.c @@ -0,0 +1,33 @@ +/* + * Copyright (C) 2014 Tomasz Kramkowski + * + * This program is free software. It is licensed under version 3 of the + * GNU General Public License. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see [http://www.gnu.org/licenses/]. + */ +#include +#include +#include +#include + +char *capitalise(char *string) +{ + bool last_sep = true; /* Nothing is a separator too. */ + for (int i = 0; i < strlen(string); i++) { + if (isalpha(string[i])) { + string[i] = last_sep ? toupper(string[i]) : tolower(string[i]); + last_sep = false; + } else + last_sep = true; + } + return string; +} + +int main(void) +{ + char string[] = "thIs iS MEANT to Be some Kind OF tEsT strinG?\n"; + printf(capitalise(string)); + return true; +} diff --git a/casting.c b/casting.c index 9911112..8bbe36c 100644 --- a/casting.c +++ b/casting.c @@ -13,22 +13,46 @@ #define harray(type, name, x, y) type (*name)[y] = malloc(sizeof(type) * x * y) -int main(int argc, char **argv) +int main(/*int argc, char **argv*/) { /*int (*test)[5] = malloc(sizeof(int) * 5 * 10);*/ - harray(int, test, 10, 5); + /*harray(int, test, 10, 5);*/ + + /*for (int i = 0; i < 10; i++)*/ + /*for (int ii = 0; ii < 5; ii++) {*/ + /*test[i][ii] = i * ii;*/ + /*printf("%d, ", i * ii);*/ + /*}*/ + /*putchar('\n');*/ + + /*for (int i = 0; i < 10 * 5; i++)*/ + /*printf("%d, ", *(((int *)test) + i));*/ + /*putchar('\n');*/ + + int test[10][5] = { + {1, 2, 3, 4, 5}, + {4, 1, 6, 7, 8}, + {9, 7, 7, 4, 0}, + {7, 0, 4, 2, 9}, + {3, 9, 3, 3, 8}, + {4, 3, 1, 4, 7}, + {5, 2, 2, 6, 6}, + {0, 3, 3, 7, 5}, + {1, 4, 4, 7, 4}, + {2, 7, 0, 8, 3}}; + + for (int i = 0; i < 5 * 10; i++) + printf("%d, ", ((int *)test)[i]); - for (int i = 0; i < 10; i++) - for (int ii = 0; ii < 5; ii++) { - test[i][ii] = i * ii; - printf("%d, ", i * ii); - } putchar('\n'); - for (int i = 0; i < 10 * 5; i++) - printf("%d, ", *(((int *)test) + i)); + /* int *another = (int *){1, 2, 4, 6};*/ + + /*for (int i = 0; i < 4; i++)*/ + /*printf("%d, ", another[i]);*/ + putchar('\n'); - free(test); + /*free(test);*/ return 0; } -- cgit v1.2.3-54-g00ecf