C/C++ command line arguments

'C/C++' forumunda FamedabLe tarafından 7 Ocak 2018 tarihinde açılan konu

  1. FamedabLe

    FamedabLe Kayıtlı Üye

    Mesaj:
    118
    Beğeniler:
    55
    Cinsiyet:
    Erkek
    [​IMG]

    Argc/Argv'ler komut satırı argümanlarıdır.
    Bir web exploiti olan sqlmap'dan örnek verelim.
    sqlmap -u www.powerhack.net/php?id=10 --dbs

    sqlmap = argv[0]
    -u = argv[1]
    www.powerhack.net/php?id=10 = argv[2]
    --dbs = argv[3]

    Argc/Argv'lerdeki Argv bir dizi olduğu için her zaman 0. indeksde başlar.
    Haydi bi' örnekle anlatalım. Girdiğimiz argümanların sayısını bulan program.

    Kod:
    #include <iostream>
    
    int main(int argc,char **argv) {
        std::cout << "Girilen argüman sayısı : " <<  argc;
       
        return 0;
    }
    Burda ./a.out PowerHack yazdığımda bana "Girilen argüman sayısı : 4 diyecek. Şimdi girilen tüm argümanları listeleyen programı yazalım.

    Kod:
    #include <iostream>
    
    
    int main(int argc,char **argv) {
       
        for(int i = 0; i < argc; ++i) {
            std::cout << argv << std::endl;
        }
       
        return 0;
    }


    Bunu derleyip çalıştırdığımda yani ./a.out
    PowerHack yazdığımda bana

    Kod:
    /root/Desktop/a.out
    PowerHack
    
    Outputunu verecek. Anlatımı bu kadardır :) umarım işinize yarar.
     
    LastC0de bunu beğendi.
Yükleniyor...

Bu Sayfayı Paylaş