Форум программистов, компьютерный форум 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? подробнее

Показать сообщение отдельно
hom9k
Сообщений: n/a

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

19.04.2009, 15:47. Просмотров 2760. Ответов 18
Метки (Все метки)

По условию задано количество символов n и текстовый файл. Если длина строки в файле больше n, то ее нужно разбить (оставить n символов на строке, а остаток на новую), там же где количество символов меньше n, то файл нужно дополнить знаками "!". Результат сохранить как f2.txt. В принципе большая часть программы сделана, но есть проблемы с копированием со строки на строку(всегда теряются символы).

Вот кусочек программы...

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
sozdanie()
{
 FILE *f1;
 FILE *f2;
 char a[15],b[1];
 int i,p,n,qw=0;
 printf ("введите количество символов, n=");
 cin>>n;
 cout<<endl;
 printf ("при вводе, в конце каждой строки нажмите Enter;\n");
 printf ("в конце файла введите точку и нажмите клавишу Enter;\n");
 printf ("исходный файл f1:\n");
 f1=fopen ("a:f.txt", "w");
 gets (a);
 p=strlen (a);
 while (a[p-1]!='.')
    {
    if (n<p)
        {
        qw=p/n;
        for (i=1;i<=qw;i++)
            {
            char rab [20];
            strcpy (rab,a+i*n);
            a[i*n]='\n';
            strcpy (a+i*n+1,rab);
            }
        }
    fputs (a,f1);
    gets (a);
    fprintf (f1,"\n");
    p=strlen (a);
    }
  if (n<p)
    {
    qw=p/n;
    for (i=1;i<=qw;i++)
        {
        char rab [20];
        strcpy (rab,a+i*n);
        a[i*n]='\n';
        strcpy (a+i*n+1,rab);
        }
     }
  a[p-1]='\0';
  fputs (a,f1);
  fclose (f1);
  printf ("\n");
  printf ("===============\n");
  f2=fopen ("a:f2.txt","w");
  f1=fopen ("a:f.txt","r");
  while (!feof (f1))
    {
    fscanf (f1,"%s",&a);
    puts (a);
    fprintf (f2,"\n");
    fputs (a,f2);
    p=strlen (a);
    for (i=0;i<(n-p);i++)
        fprintf (f2,"%s","!");
    }
    fclose (f1);
    fclose (f2);
    printf ("\n");
    f2=fopen ("a:f2.txt", "r");
    printf ("файл f2:\n");
    cout<<"===================="<<endl;
    while (!feof(f2))
        {
        fscanf (f2,"%s",a);
        puts (a);
        }
    fclose (f2);
    printf ("конец!\n");
    while (!kbhit());
    menu();
Добавлено через 13 минут 53 секунды
Подскажите где ошибка и где нужно исправить? А то я голову сломал
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru