0 / 0 / 0
Регистрация: 04.04.2009
Сообщений: 5
1

Точки и работа с командной строкой windows

04.04.2009, 17:16. Показов 5768. Ответов 9
Метки нет (Все метки)

В общем, нужно создать прогу которая будет читать введенные пользователем числа, а потом работать с ними в командной строке винды.
Существующий код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream.h>
#include <conio.h>
#pragma hdrstop
 
 
#pragma argsused
int main(int argc, char* argv[])
{
        clrscr();
    float gateway;
    cout<<"Vvedite znachenie: ";
    cout<<"\n"<<gateway<<"\n";
    system("PAUSE");
}
А теперь вопросы и проблемы:
- какой тип данных выбрать для числа с несколькими точками(18.1.2.5214.1 например)? Подобное число должен ввести юзер и оно должно стать значением переменной gateway;
- как передать в командную строку переменную gateway и какой синтаксис ее использования в ком. строке.
Заранее спасибо.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.04.2009, 17:16
Ответы с готовыми решениями:

Работа с командной строкой Windows
Здравствуйте, форумчане. У меня появилась проблема. Нужно считать файл и вывести на экран. С этим...

Работа с командной строкой
Здравствуйте! Не подскажите как можно работать с командной строкой в си++? Я имею ввиду через...

Работа с командной строкой
Нужно встроить в программу код для перекодировки звукового файла из wav во flac. Для этого взял...

Работа с командной строкой
Здравствуйте. Хочу проверить изменялось ли имя exeшного файла .запускаю из командной строки и...

9
683 / 232 / 16
Регистрация: 15.10.2007
Сообщений: 1,247
04.04.2009, 17:24 2
помоеиу это строка,ну то есть массив символов
0
Эксперт С++
2254 / 769 / 25
Регистрация: 27.05.2008
Сообщений: 1,496
04.04.2009, 17:29 3
Нужно реализовывать собственный тип,либо использовать строковый.
1
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
04.04.2009, 17:48 4
Цитата Сообщение от snake007v Посмотреть сообщение
- как передать в командную строку переменную gateway и какой синтаксис ее использования в ком. строке.
В argv[0] записывается имя твоей проги, а в argv[1], argv[2] и т.д. - параметры, которые ты ей передаешь в виде символов, разделенных пробелами.
Например, при вызове в ком. строке "prog 3.14", в argv[1] будет строка "3.14". Чтобы использовать ее как число, можно применить ф-ю преобразования atof(argv[1]) и присваивать своей переменной.
1
0 / 0 / 0
Регистрация: 04.04.2009
Сообщений: 5
04.04.2009, 18:20  [ТС] 5
Спасибо, открыли глаза на многие аспекты. Просьба, можно какой либо простейший пример?
0
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
04.04.2009, 18:28 6
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
#include <stdlib.h>
 
main(int argc, char *argv[])
{
    float f;
    
    if(argc > 1) {
       f = atof(argv[1]);
       printf("f = %f\n", f);
    } else
       printf("Too few arguments.\n");
    return 0;
}
Пример:
Код
C:\>test 0.111
f = 0.111000
Работает корректно, если в качестве аргумента передается число, в остальных случаях надо ставить дополнительные проверки.
0
683 / 232 / 16
Регистрация: 15.10.2007
Сообщений: 1,247
04.04.2009, 18:40 7
помоему все таки ТС хочет сделать дугое...если вам надо перадть чтото на исполнение в cmd используйте функцию system
1
0 / 0 / 0
Регистрация: 04.04.2009
Сообщений: 5
04.04.2009, 18:49  [ТС] 8
Цитата Сообщение от Nestor Посмотреть сообщение
Работает корректно, если в качестве аргумента передается число, в остальных случаях надо ставить дополнительные проверки.
В качестве аргумента передается IP(например 192.168.0.1) адрес. По-этому, совершенно неважно, какого типа будет переменная. Важно чтоб в конечном результате ее значение можно было использовать.
Цитата Сообщение от Mecid Посмотреть сообщение
помоему все таки ТС хочет сделать дугое...если вам надо перадть чтото на исполнение в cmd используйте функцию system
Да, но как там использовать переменные из своей программы?
0
683 / 232 / 16
Регистрация: 15.10.2007
Сообщений: 1,247
04.04.2009, 18:55 9
например вам нужно перейти в нужную папку и показать ее содержимое
C
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
#include <string.h>
int main(){
char cmd[256]="cd";
char dir[128]={0};
scanf("%s",dir); //vvodim direktoriyu
strcat(cmd,dir);
system(cmd);
system("dir");
return 0;
}
1
0 / 0 / 0
Регистрация: 04.04.2009
Сообщений: 5
04.04.2009, 19:45  [ТС] 10
Спасибо всем кто помог, миссион комплит!
ПыСы: на форуме неправильно работает счетчик сообщений. У меня их 4, а система насчитала уже 8)
С булкой давно работаю, админу могу посоветовать пересмотреть настройки подсчета сообщений и обновить счетчик.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.04.2009, 19:45
Помогаю со студенческими работами здесь

Работа с командной строкой...
Помогите использовать возможности командной строки в с++. Задание такое- ввести 200 случайных...

Работа с командной строкой
Как записать файл в командную срока и оттуда считывать этот файл?

Работа с двоичными файлами и командной строкой
Помогите, пожалуйста! Не нашла похожей задачи здесь, поэтому создаю новую тему. Нужно готовое...

Работа с командной строкой. Отрытие вызываемых файлов
Добрый вечер форумчане. Составлена программа с аргументами командной строки. Hello, word...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru