Problemas que pasan en un char[][] para execvp
Estoy tratando de recorrer algunos de entrada (que son los comandos y argumentos), dividir la entrada en cadenas individuales, pasar la entrada en execvp()
.
Estoy teniendo problemas como execvp()
quiere un (char*, char*[])
como sus argumentos. Yo estoy pasando en (char*, char[][])
que yo pensaba que era la misma cosa, pero no le gustaba.
Me gustaría utilizar un char*[]
, pero no sé cómo de grande de las cuerdas antes de la ejecución, por lo que es la razón por la que no lo uso. Así que, obviamente, si puedo usar char*[]
, tengo un seg falla cuando intento acceder a los elementos de la char*
's.
He aquí un fragmento del código
//input
char *line = "echo hello there what is";
int count = 0;
//store arguments
char args[6][10];
int argCount = 0;
//store temp string from input
char temp[100];
int tempCount = 0;
//word(string) size
int wordSize = 0;
/*
Here I iterate over the input, storing each string I find in args
all the above variables help me do that.
*/
execvp(args[0], args);
printf("Error: It didnt work\n");
Con suerte, eso es claro y una pregunta válida, hágamelo saber si usted me quieren agregar el código de mí apagando la entrada en args
.