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

Считывания символьного массив из файла. Каждое слово в отдельную ячейку! - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ error LNK2019: unresolved external symbol __imp__ http://www.cyberforum.ru/cpp-beginners/thread386934.html
В чем проблема можете подсказать. 1>------ Build started: Project: Opgl, Configuration: Debug Win32 ------ 1>Compiling... 1>op.cpp 1>c:\program files\microsoft visual studio 9.0\vc\include\gl\glaux.h(17) : warning C4068: unknown pragma 1>c:\program files\microsoft visual studio 9.0\vc\include\gl\glaux.h(374) : warning C4068: unknown pragma 1>Compiling manifest to resources... 1>Microsoft...
C++ Модульное программирование + массивы Постановка задачи Определите массив, хранящий строки символов. Создайте массив слов, считываемых из файла. Повторяющиеся слова не должны повторно заноситься в массив. Для каждого из слов определите, сколько раз оно встречается в файле. Выведите в выходной файл список слов, упорядоченный по частоте встречаемости в исходном файле (сначала – слова, которые встречаются чаще). Как? Как... http://www.cyberforum.ru/cpp-beginners/thread386933.html
Определитель матрицы C++
Ребят.помогите разобраться с прогой....как-то труднова-то для восприятия...где-то написала сама..а кое-какие куски скопировала..... mass mass::operator<(mass z1) { long double kst, y;// хоть убейте, не понимаю, что такое kst int p,k=0,t; p=0; for (i=0; i<n-1; i++) { t=1;
можно ли вставить между буквами первой строки буквы второй C++
Вот задачка: аны две строки - A и B. Спрашивается, можно ли вставить между буквами первой строки буквы второй, сохранив их относительный порядок, таким образом, чтобы получилась строка C. При этом необходимо использовать все буквы строк A и B. Входные данные В первой строке находится натуральное число T (1 <= T <= 20) - количество тестов во входном файле. Далее для каждого теста даны три...
C++ Собственно реализация http://www.cyberforum.ru/cpp-beginners/thread386924.html
Помогите реальзовать программу... Нужно,при запуске был текст приветствия. После нужно ввести команду "text1" Появляется сообщение. Потом человек прописывает команду "exit" и у него выдает текст завершение и клавишей любой офаеться прога. И сделать текст,выдавался зеленый. Подскажите хоть что нибудь из этих пунктов как сделать,не всё сразу.
C++ Многопоточность в объекте Доброго времени суток! Хочу создавать поток вызывая метод класса. Для этого: #include <iostream> #include <process.h> #include <cstdlib> #include "windows.h" подробнее

Показать сообщение отдельно
Infinity3000
1058 / 577 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
22.11.2011, 14:36  [ТС]     Считывания символьного массив из файла. Каждое слово в отдельную ячейку!
Есть код, который разбивает строку на слова и заносит все в массив, в каждую ячейку отдельное слово!

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
const int k = 100; //максимальный размер динамического символьного массива
    char *ch = new char [k]; //создаем динамический массив
 
    const int nW = 15;//размер массива для фамилий 
    char *words[nW];;
    
    cout << "\n\nОдномерный символьный массив(заполненный с файла CharMass.txt)" << endl << endl;
 
    ifstream inarray("CharMass.txt"); // открытие файла для ввода;
    if (!inarray) //если файла не существует
    {
        cout << "File can not be opened" << endl; //выводим сообщение
        return 0;   //выход из программы
    }
    inarray.getline(ch, k, EOF);//считываем с файла в массив, k-размер массива
    inarray.close(); //закрываем файл CharMass.txt
 
    int i = 0;
    words[i] = strtok(ch, " "); //
    while (words[i] != NULL)
    {
        i++;                                
        words[i] = strtok( NULL, " ");
    }
    InitMas<nW>(words); //выводим массив фамилий в консоль
Но массив в который заносятся слова нужно создать динамически! Все попытки были напрасны!

так не идет

C++
1
char *words = new char [nW];
Ругается на
C++
1
words[i] = strtok(ch, " ");
Подскажите варианты решения данной проблемы!

Добавлено через 2 минуты
если так
C++
1
words = strtok(ch, " ");
то компилится но тогда заноситься в каждую ячейку по символу!

Добавлено через 21 минуту
Привожу так сказать весь код!)

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
#include "iostream"
#include "fstream"
 
using namespace std;
 
template<int n, typename T>
void InitMas(T *mas)      //передача массива
{  
    for(int i = 0; i < n; ++i)
    {
        cout << mas[i] << " "; 
    }
}
 
int main()
{
    setlocale(LC_CTYPE,"Russian"); //русский шрифт в консоле
 
    const int k = 100; 
    char *ch = new char [k]; //создаем динамический массив
 
    const int nW = 15;//размер массива для фамилий 
    char *words[nW];// = new char [nW];
    
    cout << "\n\nОдномерный символьный массив(заполненный с файла CharMass.txt)" << endl << endl;
 
    ifstream inarray("CharMass.txt"); // открытие файла для ввода;
    if (!inarray) //если файла не существует
    {
        cout << "File can not be opened" << endl; //выводим сообщение
        return 0;   //выход из программы
    }
    inarray.getline(ch, k, EOF);//считываем с файла в массив, k-размер массива
    inarray.close(); //закрываем файл CharMass.txt
 
    int i = 0;
    words[i] = strtok(ch, " "); //
    while (words[i] != NULL)
    {
        i++;                                
        words[i] = strtok( NULL, " ");
    }
    InitMas<nW>(words);
    
//--------------------------------------------------------------------------------------------------------------------------------
    cin.get();
    return 0;
}
Нужно массив Words создать динамически и в него уже записовать слова в каждую ячейку!

Добавлено через 12 часов 45 минут
Ни каких вариантов нет!? Все перепробовал, но желаемого результата не добился!
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru