1 c
如果我有以下代码:
main(int argc, char *argv[]){
char serveradd[20];
strcpy(serveradd, argv[1]);
int port = atoi(argv[2]);
printf("%s %d \n", serveradd, port);
Run Code Online (Sandbox Code Playgroud)
打印命令行的前两个参数.但是,如果我这样做:
char serveradd[20];
strcpy(serveradd, argv[1]);
int port = atoi(argv[2]);
char versionnum[1];
strcpy(versionnum, argv[3]);
printf("%s %d %s \n", serveradd, port, versionnum);`
Run Code Online (Sandbox Code Playgroud)
第一个参数(serveradd)不打印到屏幕上并且没有存储...为什么会发生这种情况,我该如何解决?谢谢!
MSN*_*MSN 10
char versionnum[1];
strcpy(versionnum, argv[3]);
Run Code Online (Sandbox Code Playgroud)
疯狂的猜测,但你用这些线粉碎堆栈.让versionnum大; 就目前而言,它只能安全地保持空弦.
| 归档时间: |
|
| 查看次数: |
2032 次 |
| 最近记录: |