命令行參數排序,我是相當新的C/C++和我學習的命令行參數。我正嘗試使用strcpy對我的命令行參數進行排序,但是它給了我不好的輸出。 例如不能使用的strcpy
I/P:我
O/P:AMI 我
誰能幫助我什麼,我做錯了嗎?請注意:我只運行這個程序只有argc = 3,並且我只運行這個代碼(如上例中所列的那樣將被排序)。 我剛剛刪除了用於調試的循環。
#include "iostream"
#include "cstdlib"
#include "cstring"
using namespace std;
int main (int argc, char **argv)
{
char temp[100];
//sorting my command line arguments
if(strcmp(argv[1],argv[2])>0)
{
strcpy(temp,argv[1]);
strcpy(argv[1],argv[2]);
strcpy(argv[2],temp);
}
cout<<argv[1]<<endl;
cout<<argv[2]<<endl;
return 0;
}
的命令行參數的大小,所以你不能複製他們周圍像(除非他們都碰巧是相同的長度)不會自動改變。 – Galik
@CroCo我首先比較了字符串和基於我交換/排序。 – siddyi
@Galik那麼我怎樣才能排序可變長度的參數? – siddyi