У меня есть структура, которой я присваиваю значение из байтов, считываемых из mp3-файла.
struct foo{
char name[30]; //name I want
}
Что я хочу сделать, так это изменить переменные структуры из ввода через аргументы командной строки. Вот как я изначально установил переменные структуры:
int main(int argc, char *argv[]){
struct foo bar;
char *temp = argv[1];
fread(bar.name,1,30,file);//reading bytes from file and setting initial value
}
Вот как я пытался изменить их двумя способами:
bar.name = temp;// error: incompatible assigning (char[10] from char*)
strcpy(bar.name,temp);// error: incompatible implicit declaration
Вот что я ввожу в командную строку: ./test new_title
Как я должен представлять argv как char[], а не как char? Я бы использовал get_opt, но нас попросили этого не делать.
strcpy
, включите<string.h>
. - person   schedule 03.02.2015