C/C++로 작성된 응용프로그램의 main함수는 두개의 인수(관습적으로 argc와 argv)를 전달받을 수 있다. 프로그래머는 응용프로그램에 명령줄옵셔들을 전달하여 프로그램을 상황에 따라 제어하는데 많이 사용된다. (사실 main함수에는 세번째 인수로 환경변수를 전달 받을 수 있다.)
#include <QApplication>
#include "mainwindow.h"
int main(int argc, char *argv[])
{
    // QApplication 객체를 생성할 때 argc와 argv를 전달한다.
    QApplication app(argc, argv);
    // MainWindow를 생성한다.
    MainWindow w;
    w.resize(1280, 720);
    w.show();
    return app.exec();
}
이 후 QApplication 객체를 통해 인수를 얻을 수 있다.
QStringList args = app.arguments();
#include <QCommandLineParser>int main(int argc, char *argv[])
{
    // QApplication 객체를 생성할 때 argc와 argv를 전달한다.
    QApplication app(argc, argv);
    MainWindow w;
    w.resize(1280, 720);
    QCommandLineParser parser;
    // -h (help)옵션을 추가해준다.
    parser.addHelpOption();
    // 짧은 이름(-s)을 가진 bool 옵션 추가.
    QCommandLineOption showWindowOption("s", QCoreApplication::translate("main", "Show Window"));
    parser.addOption(showWindowOption);
    // 여러 이름을(-f, --force)가진 bool 옵션 추가.
    QCommandLineOption forceOption(QStringList() << "f" << "force",
            QCoreApplication::translate("main", "Overwrite existing files."));
    parser.addOption(forceOption);
    // 실제 명령 줄 인수 처리
    parser.process(app);
    bool show = parser.isSet(showWindowOption);
    if(show){
        /* 옵션(-s)이 포함되면 윈도우를 보여준다. */
        w.show();
    }
    return app.exec();
}