Этот синтаксис действителен только для инициализации массива char
из литерала, т.е. когда вы явно пишете в исходном коде, какие символы должны быть помещены в массив.
Если вы просто хотите, чтобы указатель на него (т. Е. «Другое имя» ссылался на него), вы можете сделать:
char * testvar = argv[0];
если вместо этого вы хотите копию этого, вам нужно сделать:
size_t len = strlen(argv[0]);
char * testvar = malloc(len+1);
if(testvar==NULL)
{
/* allocation failed */
}
strcpy(testvar, argv[0]);
/* ... */
free(testvar);