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

Работа с текстовыми файлами и строками - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Помогите доделать программу так, чтобы она соответствовала следующим требованиям http://www.cyberforum.ru/cpp-beginners/thread362469.html
Память под хранение элементов массива должна выделяться динамически с помощью оператора new (освобождаться – с помощью delete), размер выделяемой памяти должен определяться программой автоматически по содержимому файла (а не вводиться пользователем с клавиатуры). Весь ввод/вывод (файл, консоль) – с помощью потоков. Имя файла с элементами массива должно вводиться пользователем с клавиатуры....
C++ Ошибка при компиляции виртуальные функции error LNK2001: неразрешенный внешний символ ""public: virtual float_thiscall Operator::getNumber(void)" (?getNubmer@Operator@@UAEMXZ)" error LNK2001: неразрешенный внешний символ ""public: virtual char_thiscall Number::getOperator(void)" (?getOperator@Number@@UAEMXZ)" error LNK1120: 2 неразрешенных элементов #include<iostream> #include<cstring> using namespace std; http://www.cyberforum.ru/cpp-beginners/thread362462.html
"Не хочу константу!" C++
Здравствуйте. Компилятор (пишу в wxDev-C++) ругается на такой код #ifndef LIFE_H #define LIFE_H class Life { public: Life (); // конструктор int around ( int, int ); // считает, сколько клеток вокруг
C++ помогите разобраться с библиотекой и в чем ошибка?
Это метод Якоби #include "stdafx.h" #include <math.h> #include "nrutil.h" /* Здесь определяются некоторые утилиты типа выделения памяти */ /* Преобразование элементов при ротации */ #define ROTATE(a,i,j,k,l) g=a;h=a;a=g-s*(h+g*tau);a=h+s*(g-h*tau) /* максимальное число проходов */ #define MAXSWEEP 50
C++ поиск в ширину(Рекурсивный) http://www.cyberforum.ru/cpp-beginners/thread362455.html
Программа запускается но выдает ошибку(Задача такая: Создать программу для решения задачи построения слова из некоторого множества букв (игра Scrabble) используя алгоритмы поиска в глубину и в ширину. Длина слова не менее 5 букв. ) Код программы #include "stdafx.h" #include <iostream> #include <string> #include <Windows.h> using namespace std; string str1 = "forum"; // string str2...
C++ рекурсивные классы Доброго времени суток. Скажите пожалуйста, можно ли при написании класса объявить в нём поле того же типа что и сам класс? Компилятор ругается на такое, но может это возможно по другому? class car { ... car lada; ... }; подробнее

Показать сообщение отдельно
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
07.10.2011, 11:55     Работа с текстовыми файлами и строками
Цитата Сообщение от Iska Посмотреть сообщение
но все же в результ файле у меня все тоже самое.
Не может быть, все проверил, теоретически обосновал, у меня все правильно выдает. Попробуйте сначала с выводом на экран (напишите что на экране будет):

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
77
78
79
80
81
#include<stdio.h>
#include<string.h>
#include<ctype.h>
#define N 1024
 
int Strcmp(char *s0, char *t0)
{
   char s[N], t[N];
   int i;
   strcpy(s, s0);
   strcpy(t, t0);
   for(i = 0; s[i] = tolower(s[i]); i++)
      ;
   if (s0[i-1] == '\n')
      s0[i-1] = '\0';
   for(i = 0; t[i] = tolower(t[i]); i++)
      ;
   if (t0[i-1] == '\n')
      t0[i-1] = '\0';
   return strcmp(s, t);
}
 
int Sort(char *fname1, char *fname2, char *fname3)
{
   FILE *f, *g, *h;
   char s0[N], s[N], t0[N], t[N];
   char *sflag, *tflag;
   f = fopen(fname1, "r");
   g = fopen(fname2, "r");
   h = fopen(fname3, "w");
   if (!f || !g || !h)
   {
       fclose(f); fclose(g); fclose(h);
       return 1;
   }
   sflag = fgets(s, N, f);
   tflag = fgets(t, N, g);
   while (sflag && tflag)
   {
       if (Strcmp(s, t) < 0)
       {
           fputs(s, h);
           fputc('\n', h);
           puts(s);
           sflag = fgets(s, N, f);
       }
       else
       {
           fputs(t, h);
           fputc('\n', h);
           puts(t);
           tflag = fgets(t, N, g);
       }
   }
   if (sflag)
      do
      {
           fputs(s, h);
           fputc('\n', h);
           puts(s);
      }
      while(fgets(s, N, f));
   else
      do
      {
           fputs(t, h);
           fputc('\n', h);
           puts(t);
      }
      while(fgets(t, N, g));
 
   fclose(f); fclose(g); fclose(h);
   return 0;
}
 
int main()
{
   printf("%d\n", Sort("c:\\a.txt", "c:\\b.txt", "c:\\c.txt"));
   getchar();
   return 0;
}
 
Текущее время: 22:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru