Character Encoding
C supports multiple character encodings, prominently ASCII and UTF-8, influencing how characters are stored and displayed:
- ASCII: A 7-bit encoding standard for English characters.
- UTF-8: A variable-width encoding capable of encoding all valid Unicode code points, facilitating internationalization.
String Manipulation
C provides various functions for handling and manipulating strings, which are arrays of characters terminated by a null character (`'\0'`):
- Declaration: Strings can be declared as character arrays or pointers to characters.
```c
char str1[] = "Hello, World!";
char *str2 = "Hello, World!";
```
Functions: Standard library functions for string operations include `strlen`, `strcpy`, `strcat`, `strcmp`, and more.
Escape Sequences
C supports escape sequences to manage special characters in strings:
- Common Escape Sequences:
```c
\n // Newline
\t // Horizontal tab
\\ // Backslash
\" // Double quote
\0 // Null character
```
Character Classification and Conversion
Standard library functions classify and convert characters:
- Classification Functions: `isalpha`, `isdigit`, `isspace`, etc.
- Conversion Functions: `toupper`, `tolower`.
Locale and Internationalization
C provides mechanisms to support locale-specific settings, aiding in internationalization:
- Locale Functions: `setlocale`, `localeconv`.
- Wide Characters: `wchar_t` type and corresponding functions (`wprintf`, `wscanf`, etc.) for wider character sets.