Я впервые использую C для проекта класса после первого изучения C ++, поэтому синтаксис меня убивает ... По сути, мне нужно сохранить строку, заданную функцией, в отдельной переменной для дальнейшего использования.
У меня есть массив символов, объявленных как это
char foo[];
Функция, которую мне дали, назначает группу символов в этот массив (или указатели на символы?). Я могу распечатать фактическую строку, хранящуюся в Foo, как это
printf("%s", foo);
И я могу сохранить его адрес в другой переменной, как эта
char *bar;
bar = &foo[0];
printf("%s", foo);
Полная строка выводится просто отлично в обоих случаях. Тем не менее, как я могу сохранить эту строку в другой переменной? Если foo изменится, то bar больше не будет содержать нужную мне строку, так как она просто указывает на foo. Все, о чем я думал, дает мне ошибки компилятора, такие как
warning: initialization makes pointer from integer without a cast
Надеюсь, этого достаточно. Заранее спасибо за помощь.