Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
TrueBit
95 / 95 / 12
Регистрация: 19.11.2012
Сообщений: 195
#1

Чтение из файла в аргумент - C++

03.02.2014, 19:38. Просмотров 263. Ответов 5
Метки нет (Все метки)

Читает из файла число, и передает в аргумент функции:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <fstream>
 
void foo(int arg) {
    std::cout << arg << std::endl;
}
 
int main() {
    std::fstream fs( "example.txt", std::fstream::in );
        int temp;
    fs >> temp;
    foo(temp);
    return 0;
}
example.txt:
Bash
1
123
Можно ли как-то читать число из файла напрямую в аргумент функции foo, не вводя вспомогательных функций, переменных, классов и т.д., а используя только стандартные функции при передаче аргумента в функцию? То-есть удалить строки
C++
1
2
    int temp;
    fs >> temp;
И читать напрямую внутри скобок в строке
C++
1
foo(temp);
?

Добавлено через 13 минут
Для однозначного(один символ) числа можно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <fstream>
 
void foo(int arg) {
    std::cout << arg << std::endl;
}
 
int main() {
    std::fstream fs( "example.txt", std::fstream::in );
 
    foo( fs.get()-'0' );
 
    fs.close();
    return 0;
}
Как для многозначного?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.02.2014, 19:38     Чтение из файла в аргумент
Посмотрите здесь:

C++ Чтение из файла.
чтение файла C++
C++ Чтение из файла
C++ Чтение из файла. СИ++
Чтение из файла. C++
C++ Чтение файла
C++ Чтение из файла
Как читать целые числа из файла в аргумент функции без временных переменных? C++
Название файла, как аргумент в командной строке C++
Чтение из файла С++ C++
C++ Возможно ли использовать имя файла как аргумент main()?

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
jurok_85
238 / 221 / 76
Регистрация: 21.02.2013
Сообщений: 515
Завершенные тесты: 1
03.02.2014, 19:42     Чтение из файла в аргумент #2
можно
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <fstream>
 
void foo(int arg) {
    std::cout << arg << std::endl;
}
 
int main() {
    std::ifstream fs( "example.txt");
        int temp;
    fs >> temp;
    foo(temp);
    return 0;
}
std::fstream fs( "example.txt", std::fstream::in ); вот с этой строкой у тебя нелады
TrueBit
95 / 95 / 12
Регистрация: 19.11.2012
Сообщений: 195
03.02.2014, 19:49  [ТС]     Чтение из файла в аргумент #3
Вопрос заключается не в этом. Читайте внимательнее. Тот код работает.
jurok_85
238 / 221 / 76
Регистрация: 21.02.2013
Сообщений: 515
Завершенные тесты: 1
03.02.2014, 19:54     Чтение из файла в аргумент #4
ааааааааа не так понял
ну передать можно таким образом
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <fstream>
#include <cstdlib>
 
void foo(std::ifstream& arg)
{
    int temp;
   arg >> temp;
   std::cout << temp;
}
 
int main() {
    std::ifstream fs( "example.txt");
        int temp;
 
    foo(fs);
    return 0;
}
а вот как вывести без переменной
TrueBit
95 / 95 / 12
Регистрация: 19.11.2012
Сообщений: 195
03.02.2014, 20:00  [ТС]     Чтение из файла в аргумент #5
Цитата Сообщение от jurok_85 Посмотреть сообщение
ну передать можно таким образом
все равно немного не то, что хотел, мне еще нужно чтобы функцию foo не менять при этом, вывод 1 символа без ввода дополнительной переменной однозначного числа(но как для многозначного, или для строки?):
C++
1
2
3
4
5
6
7
8
#include <iostream>
#include <fstream>
 
int main() {
    std::ifstream fs("example.txt");
    std::cout << fs.get()-'0' << std::endl;
    return 0;
}
jurok_85
238 / 221 / 76
Регистрация: 21.02.2013
Сообщений: 515
Завершенные тесты: 1
04.02.2014, 02:56     Чтение из файла в аргумент #6
ну вот такой способ нашел:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <fstream>
 
void foo( std::ifstream& arg) {
   std::cout << arg.rdbuf();
 
}
 
int main() {
    std::ifstream fs( "example.txt");
 
    foo(fs);
    return 0;
}
Yandex
Объявления
04.02.2014, 02:56     Чтение из файла в аргумент
Ответ Создать тему
Опции темы

Текущее время: 15:57. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru