atoi(argv[1])是什麼?

1、atoi()代表的是ascii to integer,即“把字符串轉換成有符號數字”,舉例如下:

char a="-100";
char b="90";
int c=atoi(a)+atoi(b);

那麼計算結果c=-100+90=-10。

同理可得:

  • atof():ascii to float,將字符串轉換成雙精度浮點型值;
  • atol():ascii to long,將字符串轉換成長整型;
  • strtod():string to double,將字符串轉換成雙精度浮點型值,並報告不能被轉換的所有剩餘數字;
  • strtol():string to long,將字符串轉換成長整型值,並報告不能轉換的所有剩餘數字;
  • 具體的其他類似函數,可參見該博客內容:https://www.cnblogs.com/bluestorm/p/3168719.html

2、關於程序中的argc和argv

#include<opencv2/opencv.hpp>
#include<iostream>

using namespace std;

main(int argc,char * argv[])
{
    int n_boards=0;
    float image_sf=0.5f;

    float delay=1.f;
    int board_w=0;
    int board_h=0;

    board_w=atoi(argv[1]);
    board_h=atoi(argv[2]);
    n_boards=atoi(argv[3]);

}

默認argc爲1,argv[0]爲程序名稱。如果輸入一個參數,則argc爲2,argv[0]爲程序名稱,argv[1]爲輸入的那個參數。以此可推出,多個輸入參數的情況。

main(int argc,char * argv[]),表示的就是argc表示你使用這個程序時,輸入的參數的個數,argv[]表示各個參數。

舉例:比如你使用ping命令時, ping www.baidu.com,這時argc=2 argv[0]="ping" argv[1]=www.baidu.com

具體事例可以參加該博客:https://blog.csdn.net/sunstars2009918/article/details/6543617

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章