读书人

改变程序的名称。这个程序如何解释

发布时间: 2012-09-23 10:28:11 作者: rapoo

改变程序的名称。这个程序怎么解释?
帖子原内容在这里
第十题
#include<stdio.h>

int main(int argc, char *argv[])
{
int i = 0;
char buff[100];

memset(buff,0,sizeof(buff));

strncpy(buff, argv[0], sizeof(buff));
memset(argv[0],0,strlen(buff));

strncpy(argv[0], "NewName", 7);

// Simulate a wait. Check the process
// name at this point.
for(;i<0xffffffff;i++);

return 0;
}

[解决办法]
main( int argc, char *argv[ ], char *envp[ ] )

argv
An array of null-terminated strings. It can be declared as an array of pointers to char (char *argv[ ] or wchar_t *argv[ ] for wmain) or as a pointer to pointers to char (char **argv or wchar_t **argv for wmain). The first string (argv[0]) is the program name, and each following string is an argument passed to the program from the command line. The last pointer (argv[argc]) is NULL.

读书人网 >C语言

热点推荐