Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Ада и другие языки _ подскажите *argv[]

Автор: blackhard 18.03.2008 0:33

подскажите! я записываю в командную строку всеравно че допустим /n потом я читаю командную строку и хочу проверить че там написано и пишу такое условие if(argv[i]=="/n") то чегото там... так вот как проводить сравнение строк из командной строки со строкой из программы если я пишу так if(argv[i]=="/n") ничего не выходит? подскажите как нужно?
да и если я провожу посимвольное сравнение if(*argv[1]=='/') все работает.

Автор: volvo 18.03.2008 0:54

Строки нельзя сравнивать через ==, есть специальная функция strcmp:

    if(!strcmp(argv[1], "/n")) {
cout << "Wow!!!" << endl;
}
или (если компилятор современный) - то приводить argv к типу string:
    if(string(argv[1]) == "/n") {
cout << "Wow!!!" << endl;
}

Автор: blackhard 18.03.2008 1:01

Цитата(volvo @ 17.03.2008 20:54) *

Строки нельзя сравнивать через ==, есть специальная функция strcmp:
    if(!strcmp(argv[1], "/n")) {
cout << "Wow!!!" << endl;
}
или (если компилятор современный) - то приводить argv к типу string:
    if(string(argv[1]) == "/n") {
cout << "Wow!!!" << endl;
}


оооооо огромное спасибо! ато я из за этой мелочи целый день потерял(