Working just from your code fragment, it is difficult to work out what your problem is: the only reference to strcmp you have does not use argv at all - it uses an array of strings you create and fill.
But are you sure you are using it right?
strcmp(argument[0], "cd")
will return 0 if the strings are the same, so
if (!strcmp(argument[0], "cd"))
changeDirectory(buffer,i);
will change the directory if the arguement is
not "cd"
I don't think that is quite what you intended...
Use the debugger - step through you code and see what is going on. It's a lot easier and quicker that asking here - particularly if you don't give us the right info! :laugh:
[edit]C true is non-zero, dunno why I got that wrong...- OriginalGriff[/edit]