У вас была правильная идея, но вы не меняете указатели в argv[n]
, вы должны изменить строку, на которую указывает argv[0]
:
#include <string.h>
#include <unistd.h>
int main(int argc,char **argv)
{
size_t maxlen = strlen(argv[0]);
memset(argv[0], 0, maxlen);
strncat(argv[0], "Hi Mom!", maxlen);
pause();
return 0;
}
(Обратите внимание, что действительно ли это меняет имя команды, обозначенное ps
, зависит от системы).