strings.c
#include <ctype.h>
#include <string.h>
// indexing
char string[] = "proton";
string[0] // p
string[3] // t
// built-in operators
char a = 'a';
char b = 'B';
toupper(a) // A
tolower(b) // b
// conditionals
isdigit(a) // 0 (false)
islower(a) // 1 (true)
isupper(a) // 0 (false)
// comparing strings
char first_string[] = "This is a string.";
char second_string[] = "This is a string.";
char third_String[] = "This is another string.";
strcmp(first_string, second_string) // 0 (equal)
strcmp(first_string, third_String) // not equal
strlen(first_string) // 17
// reverse string
// NOTE: no built in function
char* str_reverse(char *str) {
char tmp;
size_t n = 0;
size_t len = strlen(str);
for (n = 0; n < (len / 2); n++) {
tmp = str[n];
str[n] = str[len - n - 1];
str[len - n - 1] = tmp;
}
return str;
}
str_reverse("test")
// tset