2015-12-21 4 views
-7

Программа на C++, которая может выводить ввод, который получает не более 55 символов.Самый короткий способ вывода ввода C++

Пример ввода:

abc 
123 
bjgf 

Пример вывода:

abc 
123 
bjgf 

Самый короткий код, который работал для меня до сих пор:

#include <iostream> 
#include <stdio.h> 

main(){ 
    int i; 
    while((i=std::cin.get())!=EOF) 
    { 
     std::cout.put(i); 
    } 
} 

Будет ли другая работа заголовка?

+1

main() без типа is is not-iso –

+2

Похоже, что это лучше подходит для [Code Golf] (http://codegolf.stackexchange.com/). Но я недостаточно знаком с правилами этого сайта, чтобы узнать, нужна ли больше работы, чтобы сделать его приемлемым там, поэтому, пожалуйста, осмотритесь перед публикацией. – Angew

ответ

4

Любая причина не в быстрой версии?

#include <iostream> 
int main() { 
    std::cout << std::cin.rdbuf(); 
    return 0; 
} 

Он короче вашей версии, несмотря на то, что был правильным C++ и был должным образом отформатирован.

+0

@SchulzeThomas: Я вижу, что это изменение было одобрено, но я сознательно отказался от «return 0;», поскольку он не нужен и, очевидно, делает код длиннее. Соответствующий раздел стандарта C++ - это 3.6.1 [basic.start.main] параграф 5 последнего предложения: «... Если элемент управления достигает конца' main', не встречая оператора 'return', эффект заключается в выполнении 'return 0;' ". Однако код все же короче оригинала. –

Смежные вопросы