Пример функции, которая считает, сколько раз символ letter встретится в строке string:
int letterCounter(char *string, char letter) { int letterCount = 0; for(int i = 0; string[i]; i++) if(string[i] == letter) letterCount++; return letterCount; }
Пример использования цикла со счётчиком:
for(i = 0; i < array_size; i++){ ... // тело цикла }
Пример использования fgets
для считывания с консоли:
int size = 100; char string[size]; fgets(string,size,stdin);
Помимо функции fgets
можно посимвольно считывать строку через getchar
, однако вариант с fgets
является более правильным.
Если есть гарантии по условию, что на вход будет подаваться какой-то один конкретный тип данных кроме строки (например, целочисленное число),
то тогда можно использовать функцию scnaf
. Например, следующий код считывает число между двумя вертикальными чертами (например, |15|
):
int x; scanf("|%d|", &x);
Пример выделения и освобождения памяти:
char* buffer = (char*)malloc(sizeof(char) * buffer_size); ... free(buffer);