Я ищу обработку строки, переданной с помощью аргумента командной строки, с циклом for в C. Мне интересно, правильно ли это будет.Динамически выделенная строка из аргумента командной строки
main(int argc, char * argv[])
{
char * somestring;
somestring = malloc((strlen(argv[1]) + 1) * sizeof(char));
somestring = argv[1];
...
}
или будет C выделить соответствующую память, если я сделал:
char * somestring;
somestring = argv[1];
Почему бы не использовать 'strcpy'? Почему C будет выделять вам память, если вы не попросите об этом? – user1336087
Всё зависит от меня. Вы хотите иметь возможность изменять 'somestring' и сохранять исходный аргумент неповрежденным? Вы просто хотите использовать (без изменения) аргумент? –
Я просто хочу обработать его персонажем символом с циклом for. – anon349