Как мне обратиться к значению char * в структуре, которая передается методу с указателем структуры? - PullRequest
0 голосов
/ 10 марта 2020

У меня есть структура, определенная как:

struct B{
  struct B_test *class;
  char* value;
}

как мне вывести значение char, если у меня есть функция, передающая структуру в качестве параметра, как показано:

void print(struct B* e){
  ...
} 

Ответы [ 2 ]

3 голосов
/ 10 марта 2020

Например,

puts( e->value );

или

printf( "%s\n", e->value );

при условии, что значение элемента данных указывает на массив, содержащий строку.

В противном случае вам нужно знать количество фактических элементов в указанном массиве.

Если значение элемента данных указывает на один символ, вы можете вывести его, например, как

printf( "%c\n", *e->value );
0 голосов
/ 10 марта 2020
void print(struct B* e){
    printf("%s", e->value);
} 

Доступ к элементам структуры через указатель осуществляется с помощью оператора ->, а не оператора ..

...