Я пытаюсь использовать функцию со строкой в качестве параметра. Я запускаю несколько сообщений об ошибках. Во-первых, он говорит, что строка [i] не является массивом, указателем или вектором, несмотря на то, что строка является символьным массивом. Во-вторых, он говорит, что я делаю указатель на целочисленное преобразование. Вот мой код:Использование string как параметра для функции
#include <stdio.h>
#include <string.h>
void example (char string) {
int i;
for (i = 0; i < strlen(string); i++) {
printf (string[i]);
}
}
int main (void) {
example("I like pie");
return 0;
}
Учебное пособие по строкам в C: http://www.tutorialspoint.com/cprogramming/c_strings.htm. –
Эта строка: void example (char string) {'говорит, что передается один символ. возможно, вы имели в виду: 'void example (char * string) {' <- заметить, что параметр теперь является указателем на char, а не на один символ. Указанный символ может легко быть добавлением первого символа в «строке» символов. – user3629249
Эта строка: 'printf (string [i]);' не имеет допустимой строки формата в качестве первого параметра. поэтому либо напишите: printf («% c», строка [i]). или напишите: putc (string [i]; – user3629249