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

Потеря символа при копировании строки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Перегруженная функция в классе вектор http://www.cyberforum.ru/cpp-beginners/thread30662.html
#include <iostream> #include <vector> #include"Employe.hh" using namespace std; int main() { vector<Racine> v; //вектор объектов класса Racine
C++ Найти общую сумму 10 введенных массивов Помогите найти общую сумму 10 введеных массивов. http://www.cyberforum.ru/cpp-beginners/thread30634.html
Шаблон очереди C++
Это шаблон очереди на списках. Посмотрите, пожалуйста, в чём ошибка: #include <iostream> using namespace std; template <typename TInfo> class TQueue { protected:
C++ Проверьте лабораторную №3
Создать шаблоны функций, выполняющей ввод, вывод и упорядочивание матриц. Протестировать шаблоны для матриц с элементами различных типов: int, float и char. Варианты заданий приведены в лабораторной работе № 1. Какие недочеты, что можно улучшить и т.д. #include <iostream> #include <conio.h> using namespace std; #define DATATYPE double // Òèï äàííûõ ìàòðèöû
C++ error LNK2019: ссылка на неразрешенный внешний символ http://www.cyberforum.ru/cpp-beginners/thread30624.html
Вот код, неполный, решил откомпилировать - узнать, что исправить #include "stdafx.h" #include <cstdlib> #include <iostream> using namespace std; #define istr 21 struct train{ int num; char naz; char time;
C++ Приведение типов Чем отличается type(x) от (type) x? подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
17387 / 5625 / 351
Регистрация: 30.03.2009
Сообщений: 15,407
Записей в блоге: 26
25.04.2009, 11:37     Потеря символа при копировании строки
Цитата Сообщение от accept Посмотреть сообщение
а у тебя два printf вызова
У тебя тоже два: один внутри PrintLine, другой внутри PrintLineNumber. Если ты этого не заметил, то это опять-таки говорит об излишней громоздкости твоей программы

Добавлено через 9 минут 31 секунду
Цитата Сообщение от accept Посмотреть сообщение
ты не можешь доказать этого, сделай там длину равной трём и всё будет работать
Я же написл - когда строку нужно читать ЦЕЛИКОМ и её обрабатывть (а не просто напечатать)

Цитата Сообщение от accept Посмотреть сообщение
считать строку целиком, так ты её вообще не считываешь, то есть реально работать с ней, как с самостоятельным объектом ты не можешь, ты не можешь взять её и сказать - вот это строка, я щас измерю её или я щас обработаю эту строку (у тебя её нет), ты её перегнал и всё, и нету у тебя её
Зачем мне её обрабатывать, когда задача того не требует?

Цитата Сообщение от accept Посмотреть сообщение
а я не хочу читать ифы, ифов можно знаешь сколько написать, 1000 строк - ты что, будешь сидеть и читать ифы ? чтобы понять что они делают ? зачем ?
есть функция, я запишу ифы в неё, а потом по её названию буду смотреть что она делает где-либо (понимаешь, в ней двадцать строк, а мне их читать не надо, я читаю одну строку - её вызов), а говорит о том, что твой участок кода написан один раз и срабатывает один раз, потому что ты его пишешь в открытом виде, даже не приходится, ты и сам это понял уже, что одну функцию может юзать любая часть программы, а у меня это всё уже оформлено
Т.е. ты напишешь отдельную процедуру, которая ищет максимальное среди двух чисел, отдельную процедуру нахождения максимального среди трёх чисел? А ещё отдельную процедуру для нахождения суммы трёх чисел, а ещё отдельную для нахождения произведения трёх чисел?

Цитата Сообщение от accept Посмотреть сообщение
ты сказал, что что-то непонятно, приведи пример где непонятно, может ты енамы не знаешь и говоришь, что я непонятно пишу, не нашёл, где выводится строка - так она выводится интерфейсной функцией и он единый для всей программы, для него дописаываются новые функции, а те, которые уже написаны, подключаются к нему же (просто тут всё в одном файле, я подумал, если это разнести, ты может и в файлах ещё запутаешься, а мне это не надо )
Я же написал, при не очень внимательном просмотре. Т.е чтобы вникнуть, что у тебя там делается, пришлось внимательно всё смотреть, а так же все процедуры. При этом постоянно скакать по файлу взад-вперёд. Когда ты пишешь что-то один - ну это нормально, потому что свой код понимается легче. Когда ты работаешь в команде из ста человек, и каждый на элементарные вещи начнёт городить код, где с ходусложно что-то понять - работа будет сильно тормозиться. Сам небось видал коды, написанные индусами

Что касаемо for, то лично я использую его как правило только в двух случаях: когда нужен обычный счётчик и когда делается обход структур по типу списочной. Ну и в мелких случаях, где внутренности for'а простые. В этом случае человеку достаточно одного взгляда на это, чтобы понять, что там делается. Потому что это идиоматическая (общепринятая) запись

C
1
2
3
    for (lineno = outsize = 0, putnumber = YES;
         ReadLine(line, MAXLINE, ifp) > 0;
         outsize += PrintLine(line, NULL)) {
Вот такая конструкция, где в хвостовой части for'а стоит вызов процедуры - это дополнительно потраченное время для того, чтобы понять, что тут делается. Если процедура будет большая, то надо дополнительно скакать вверх-вниз, чтобы аккуратно осознать что в каком порядке исполняется. Программист поймёт эту конструкцию - тут вопросов нет. Но время, потерянное на втыкание - сам знаешь, для компаний оборачивается в деньги
 
Текущее время: 07:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru