Во-первых, строки заканчиваются нулем.Для строки из пяти символов вам нужно выделить массив из 6 символов для обработки символа '\0'
в конце строки.
char name[6] = "peter";
// peter is {'p', 'e', 't', 'e', 'r', '\0'}
Чтобы проверить, какие отдельные символы есть, проиндексируйте строку с помощью квадратаскобки.Первый символ - это индекс 0, второй - это индекс 1 и т. Д. Кроме того, C различает строки и отдельные символы.Строка написана с "double quotes"
.Символы пишутся в одинарных кавычках: 'r'
.
if (name[4] == 'r') {
printf("fifth character of name is r\n");
}
Чтобы найти последний символ, вам нужно знать длину строки.Если вы знаете длину заранее, вы можете жестко ее кодировать;в противном случае используйте функцию strlen
для вычисления длины строки.А затем вычтите 1, потому что индексы основаны на 0.
if (name[strlen(name) - 1] == 'r') {
printf("last character of name is r\n");
}
Для печати отдельных символов с printf
вы можете использовать спецификатор формата %c
.%c
печатает один символ.
printf("fifth character of name is %c\n", name[4]);
printf("last character of name is %c\n", name[strlen(name) - 1]);