Я пытаюсь создать массив строковых массивов с нулевым символом. Все в массиве известно во время компиляции, за исключением одного элемента, который помещается в него во время выполнения.Создание массива строковых массивов с нулевым символом, где большинство строковых массивов являются статическими
Это, как я хочу, чтобы массив посмотреть: [ ["command1", "arg", "arg", 0], ["command2", 0], argv, ["command3", "arg", 0] ]
Так вот command1, command2 и их арги известны во время компиляции, только ARGV помещается в него во время выполнения.
Проблема в том, что я не могу выполнить эту работу. В настоящее время я делаю это, чтобы создать массив с NUM_COMMANDS (номер) команды:
char *commands[ NUM_COMMANDS ][] = {
{"command1", "arg", 0},
{0}, /*This is where I want to place argv*/
{"command2", "arg", 0}
};
Но это не позволит мне вставить ARGV.
Как я могу изменить это в виде массива, которым я пользуюсь?
Спасибо!
Не прочитал это еще, но это должно помочь: http://stackoverflow.com/questions/2305255/pointer-array-syntax-char-p-pn-in-cc – rliu
Возможно, вам придется добавить еще информацию, такую как «NUM_COMMANDS», и как вы пытаетесь «вставить» «argv». –
(И сообщение об ошибке компилятора.) – Mat