Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
 Аватар для maks_IQ
21 / 21 / 1
Регистрация: 05.01.2011
Сообщений: 173

командная строка

21.05.2011, 23:28. Показов 1903. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
вот такой вопрос: можно ли получить в переменную то, что выводится в командной строке?
например, если я выполню
C++
1
system("skdfbgklsjbgflbj");
то появится сообщение:
"skdfbgklsjbgflbj" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
.
так вот можно получить этот текст в переменную? если да то как?

Добавлено через 19 минут
попробовал перенаправить вывод с консоли в файл
C++
1
system("ping google.com > c:\ping.txt");
, но кириллица выводиться кракозябрами =(
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.05.2011, 23:28
Ответы с готовыми решениями:

Командная строка
В командной строке задается признак фигуры, объем которой необходимо вычислить: s – шар (аргумент – радиус); k – куб (аргумент...

Командная строка
Здравствуйте. Возможна тема, подобная этой уже создавалась, в любом случае не нашел и, если что - прошу прощения. Суть проблемы...

Командная строка
Нужно выполнить задание, но как не пойму... Ввести n строк , найти самую короткую и самую длинную строки. Вывести найденные строки и...

11
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
22.05.2011, 03:35
Цитата Сообщение от maks_IQ
так вот можно получить этот текст в переменную?
system() не предусматривает двухстороннего взаимодействия
в лине можно использовать popen(), а в винде, вероятно, создавать процесс

Добавлено через 10 минут
msdn. консоль
0
 Аватар для nikitapel
37 / 37 / 6
Регистрация: 20.03.2011
Сообщений: 331
22.05.2011, 10:13
Можно .
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <fstream>
#include <iostream>
#include <string>
#pragma argsused
int i = 1;
std::string s;
int main()
{
system("ping google.com > c:\\ping.txt");
 
std::ifstream ifs("c:\\ping.txt");  //Теперь открываем
if(!ifs.is_open()){std::cerr<<"File not found"; return 1;} //если файл не сществует
 
        while(getline(ifs,s))       {  // цикл сканирует поочереди  каждую строчку
      std::cout<<i<<". "<<s<<endl;
        i=i+1;
 
 
        }
        i=i-1;
                ifs.close(); //Закрываем файл
                std::cout<<"Cтрочек в этом txt "<<i;
                system("pause >> void");
}
0
Эксперт С++
516 / 421 / 92
Регистрация: 23.09.2010
Сообщений: 1,165
22.05.2011, 10:18
Цитата Сообщение от maks_IQ Посмотреть сообщение
но кириллица выводиться кракозябрами =(
А почему нельзя переконвертировать или просто открыть файл в нужной кодировке, если это только для вас.
0
 Аватар для maks_IQ
21 / 21 / 1
Регистрация: 05.01.2011
Сообщений: 173
22.05.2011, 11:29  [ТС]
nikitapel,

ЋЎ¬Ґ* Ї*ЄҐв*¬Ё б google.com [74.125.39.104] Ї® 32 Ў*©в:



ЋвўҐв ®в 74.125.39.104: зЁб«® Ў*©в=32 ўаҐ¬п=74¬б TTL=53

ЋвўҐв ®в 74.125.39.104: зЁб«® Ў*©в=32 ўаҐ¬п=74¬б TTL=53

ЋвўҐв ®в 74.125.39.104: зЁб«® Ў*©в=32 ўаҐ¬п=74¬б TTL=53

ЋвўҐв ®в 74.125.39.104: зЁб«® Ў*©в=32 ўаҐ¬п=74¬б TTL=53



‘в*вЁбвЁЄ* Ping ¤«п 74.125.39.104:

Џ*ЄҐв®ў: ®вЇа*ў«Ґ*® = 4, Ї®«гзҐ*® = 4, Ї®вҐап*® = 0 (0% Ї®вҐам),

ЏаЁЎ«Ё§ЁвҐ«м*®Ґ ўаҐ¬п ЇаЁҐ¬*-ЇҐаҐ¤*зЁ ў ¬б:

ЊЁ*Ё¬*«м*®Ґ = 74¬бҐЄ, Њ*ЄбЁ¬*«м*®Ґ = 74 ¬бҐЄ, ‘।*ҐҐ = 74 ¬бҐЄ
вот что выводиться в файл.
как пределать это в нормальный, читаемый вид?

Добавлено через 40 секунд
gooseim, что именно нужно сделать? я через notepad ++ пробовал открывать, менял разные кодировки, но результат тот же
0
Эксперт С++
516 / 421 / 92
Регистрация: 23.09.2010
Сообщений: 1,165
22.05.2011, 11:32
У меня нормально открывается в DOS OEM (866).
1
 Аватар для nikitapel
37 / 37 / 6
Регистрация: 20.03.2011
Сообщений: 331
22.05.2011, 11:43
Открой с помощью akelpad
1
 Аватар для maks_IQ
21 / 21 / 1
Регистрация: 05.01.2011
Сообщений: 173
22.05.2011, 11:47  [ТС]
gooseim, точняк, так открывается
С файлом разобрались, а вот что насчет записать весь этот текст в одну переменную?
и желательно сразу нормальной кириллицей, без кракозябр
0
 Аватар для nikitapel
37 / 37 / 6
Регистрация: 20.03.2011
Сообщений: 331
22.05.2011, 12:26
Не знаю занести как все в одну переменную, чтобы было все построчно.
Но можно каждую строчку взять за массив.
Массивы будут русскими символами выше я уже приводил пример!!!
0
 Аватар для maks_IQ
21 / 21 / 1
Регистрация: 05.01.2011
Сообщений: 173
22.05.2011, 12:31  [ТС]
nikitapel, решил проблему
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include "stdafx.h"
#include <conio.h>
#include <fstream>
#include <iostream>
#include <string>
 
using namespace std;
int main()
{
    setlocale(LC_ALL,"rus");
    FILE *fin;
    size_t k;
    char buf[1000];
 
    fin = fopen("c:\\1.txt","r");
 
    while(!feof(fin))
     {
      k = fread(buf,sizeof(char),1000,fin);
      buf[k]=0;  
     }
    
      printf("%s",buf);
    fclose(fin);
 
    getch();
    return 0;
}
1
Эксперт С++
516 / 421 / 92
Регистрация: 23.09.2010
Сообщений: 1,165
22.05.2011, 14:05
можно проще:
C++
1
2
istream file("c:\\1.txt");
file.getline(buf, 1000, '\0');
1
 Аватар для nikitapel
37 / 37 / 6
Регистрация: 20.03.2011
Сообщений: 331
22.05.2011, 14:42
Молодец тоже возьму себе на заметку
Если нужно именно какую нибудь строчку взять под переменную можешь моим способом воспользоваться!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.05.2011, 14:42
Помогаю со студенческими работами здесь

Командная строка
как сделать вывод сообщений на русском языке(англ.) в командной строке? Почему ошибка в объявлении вещественного типа и как запустить прогу...

Командная строка.
Сумма чисел. числа передаются в виде аргументов командной строки. #include &lt;iostream&gt; #include &lt;locale&gt; using namespace...

Командная строка в С++
Добрый день, можете подсказать как сделать так, чтобы имена входного и выходного файла программы задавались в командной строке...

Командная строка
Помогите пожалуйста с программой. Объясните, как работать с командной строкой через с++? Задание таково: - В командной строке задаются...

C++ и командная строка
Как с помощью с++ открыть ком. строку и ввести команды?


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru