首页 > 解决方案 > 将命令行上的输入显示到数组中时如何删除./a.out?

问题描述

[我的程序需要接受来自 linux 命令行的输入并将其组织成数组。a[0] 应该显示用户输入的第一个整数。但是我得到 a[0] = ./a.out。我将如何删除 ./a.out 并让 a[0] = 第一个整数?]

 #include <iostream>
 #include <string>
 #include <cmath>
 #include <stdlib.h>
 using namespace std;

 int main ( int argc, char *argv[] )
 {    
         for(int i = 0; i < argc;++i)
         {

                 printf("\nargv[%d]: %s\n",i,argv[i]);
         }
 }

标签: c++linuxargv

解决方案


从索引 1 开始,但显示为索引 0。

for(int i = 1; i < argc;++i)
{
    printf("\nargv[%d]: %s\n", i-1, argv[i]);
}

推荐阅读