Вывести количество символов, из которых состоит введённое слово - C (СИ)
Формулировка задачи:
Программа попросту выводит количество символов из которых состоит введённое нами слово. Работает правильно, но вот от куда берётся warning что-то без помощи пока туговато догнать:
????
→ gcc -Wall -o vopros vopros.c vopros.c: In function ‘main’: vopros.c:20:1: warning: passing argument 1 of ‘word’ from incompatible pointer type [enabled by default] vopros.c:4:5: note: expected ‘char *’ but argument is of type ‘char **’
#include <stdio.h>
int word(char *p){
char buffer[25];
unsigned length = 0;
scanf("%25s", buffer);
p = buffer;
while (*p != '\0') {
p++;
length++;
}
return length;
}
int main() {
unsigned i;
char *p;
i = word(&p);
printf("This word consists of %u letters\n", i);
return 0;
}Решение задачи: «Вывести количество символов, из которых состоит введённое слово»
textual
Листинг программы
char *p; i = word(&p);
Объяснение кода листинга программы
В данном коде выполняется следующие действия:
- Объявляется указатель
pна типchar. - Вызывается функция
word(&p), которая, предположительно, принимает указатель наcharи возвращает значение целочисленного типаi. Таким образом, в результате выполнения кода, в переменнойiбудет содержаться количество символов, из которых состоит введённое слово.