diff options
author | EliteTK <tomasz.kramkowski@gmail.com> | 2014-11-13 19:14:43 +0000 |
---|---|---|
committer | EliteTK <tomasz.kramkowski@gmail.com> | 2014-11-13 19:14:43 +0000 |
commit | 046c70cd0a4106e9cce9e2faaa65bd71fa01eb15 (patch) | |
tree | 5b3656c71377a7c80fbbbca04d7dcd51a07f064d | |
parent | b59699746fd3afe2390aadbeaa2249a7b84d5cb8 (diff) | |
download | c-stuff-046c70cd0a4106e9cce9e2faaa65bd71fa01eb15.tar.gz c-stuff-046c70cd0a4106e9cce9e2faaa65bd71fa01eb15.tar.xz c-stuff-046c70cd0a4106e9cce9e2faaa65bd71fa01eb15.zip |
cap.c: new; casting.c: more tests
-rw-r--r-- | cap.c | 33 | ||||
-rw-r--r-- | casting.c | 44 |
2 files changed, 67 insertions, 10 deletions
@@ -0,0 +1,33 @@ +/* + * Copyright (C) 2014 Tomasz Kramkowski <tk@the-tk.com> + * + * 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 <stdio.h> +#include <string.h> +#include <stdbool.h> +#include <ctype.h> + +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; +} @@ -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; } |