溫馨提示×

C++ getopt 怎樣定義必選參數

c++
小樊
101
2024-07-15 17:56:46
欄目: 編程語言

在C++中,可以使用getopt函數來解析命令行參數。要定義必選參數,可以在選項字符串中使用冒號來指示必選參數。例如,如果想要定義一個必選參數-f,可以這樣做:

#include <iostream>
#include <unistd.h>

int main(int argc, char* argv[]) {
    int opt;
    std::string filename;

    while ((opt = getopt(argc, argv, "f:")) != -1) {
        switch (opt) {
            case 'f':
                filename = optarg;
                break;
            default:
                std::cerr << "Usage: " << argv[0] << " -f <filename>" << std::endl;
                return 1;
        }
    }

    if (filename.empty()) {
        std::cerr << "Missing required option -f <filename>" << std::endl;
        return 1;
    }

    std::cout << "Filename: " << filename << std::endl;

    return 0;
}

在上面的示例中,選項字符串為"f:",其中'f'表示選項-f需要一個參數。如果用戶沒有提供必選參數-f,程序會輸出錯誤信息并退出。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女