Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
11 / 11 / 12
Регистрация: 27.10.2014
Сообщений: 108

Не могу определить ошибку

20.11.2015, 23:40. Показов 594. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здраствуйте.
Делаю работу, сделал без классов, теперь мучаюсь и переделываю под классы.
Есть задача подсчитать символы в тексте, и вывести их в стргрид.
У меня все работало в функциях, но тут почему то ошибка(Acces).
Как понял, ошибка доступа к чему-то.
Выручите, а то не могу понять в чем трабл.
Вот код:
Воспомогательные массивы:
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
using namespace std;
const int alph = 26;
char symbols[] = {
    '!'
    , '.'
    , ','
    , '#'
    , '?'
    , '@'
    , '%'
    , '^'
    , '&'//9
    , '*'
    , '('
    , ')'
    , '{'
    , '}'
    , '`'
    , '/'
    , '$'
    , '\ '
    , '®'
    , '©'
    , '-'
    , '_'
    , '+'
    , '='
};
const int countOfSymb = 25;
char alphabet[alph] = { 'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z' };
int counting[alph] = { 0 };
int countSymb[countOfSymb] = { 0 };
Header + main
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
class myText
{
private:
    AnsiString asText;
    int countOfWords;
public:
    myText(AnsiString txt)
    {
                asText=txt;
    }
    int countCols(int ptr[]);
    void countLetter();
 
};
int myText::countCols(int ptr[])
{
        int count = 0;
        for (int i = 0; i < countOfSymb; i++)
            if (ptr[i] != 0) count++;
        return count;
}
void myText::countLetter()
{
                if(asText.IsEmpty()){ShowMessage("Text edit is empty"); return;}
        char symbol;
        for (int i = 1; i < asText.Length(); i++)
        {
            bool checkedArr = false;
            symbol = asText[i];
            if (!isalpha(symbol) && symbol!=' ')
                        {
                for (int k = 0; k < countOfSymb; k++)
                {
                    if (symbol == symbols[k]) //проходимо по циклу, нашли той символ
                    {                      //збільшили інт масив
                          //    checkedArr = true;
                        countSymb[k]++;
                        break;
                    }
                }
                  //    if (!checkedArr) {}
                continue;
            }
        }
            int weightSymb = countCols(countSymb);
            Form1->SymbolTable->ColCount = weightSymb;
        if (weightSymb != 0)
        {
            for (int i = 0, j = 0; i < countOfSymb; i++)
            {
                if (countSymb[i] == 0) continue;
                else
                {
                        Form1->SymbolTable->Cells[j][0] = countSymb[i];
                        Form1->SymbolTable->Cells[j][1] = symbols[i];
                    j++;
                }
            }
                Form1->SymbolTable->Visible = true;
                Form1->SymbolTable->Width = 26 * weightSymb + 7;
        }
}
Main

C++
1
2
3
    AnsiString all=TextEdit->Text;
        myText *a=new myText(all);
        a->countLetter();
Добавлено через 11 минут
Нашел проблему
C++
1
Form1->SymbolTable->ColCount = weightSymb;
Та и вообще где есть приставка Form1-> выбивает ошибку.
что сделать что-бы оно видело тот стринггрид?

Добавлено через 3 минуты
Пофиксил, можете закрывать.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.11.2015, 23:40
Ответы с готовыми решениями:

Ошибку не могу определить
вообщем ошибка странная не могу понять откуда она взялась Ошибка 6 error LNK2019: ссылка на неразрешенный внешний символ _main в функции...

Не могу определить ошибку
Добрый день\вечер. Было задание, из списка людей найти подходящего по заданной букве имени и вес=рост-100. По таким условиям. Вроде и...

Не могу определить ошибку (конкретизация шаблонной функции)
Всем привет. Есть шаблонная функция template&lt;typename T&gt; void Tree&lt;T&gt;::inTreeHelper(const T &amp;data, Leaf&lt;T&gt; *currentLeafPtr) ...

4
 Аватар для Lelik-pahan
1709 / 905 / 207
Регистрация: 25.11.2009
Сообщений: 1,850
20.11.2015, 23:41
У меня твой код работает без ошибок. Т. е. подсчитывает символы неверно, но прорамма не вылетает с ошибкой.
Уточни, какой текст вводишь в TextEdit и какие начальные размеры таблицы SymbolTable
0
11 / 11 / 12
Регистрация: 27.10.2014
Сообщений: 108
20.11.2015, 23:58  [ТС]
Да?
странно.
Я сделал что-бы оно подсчитывало в count массив в классе, а выводило уже просто с кнопочки.(так работает, но не очень устраивает)
Но как-то самому интересно, почему оно не может с класса всунуть в тот стрингрид значение, пробовал на другую кнопку поставить , другую функцию которая просто добавляет в стрингрид какой-то текст, и выскакивает та самая ошибка.
Все header файлы за инклюдил, но чето не могу всеравно понять.

Та просто, если в TextEdit(это у меня Мемо) ввожу букву, любую сразу , и нажимаю на кнопку сразу кик.
начальные размеры таблицы col-1,row-2.
То есть
C++
1
int weightSymb = countCols(countSymb);
подсчитывает сколько !0.
C++
1
Form1->SymbolTable->ColCount = weightSymb;
ну и тут расширяет до нужного размера

Добавлено через 8 минут
Только что увидел, что подсчитывает символы не верно, все оно норм подсчитывает, з чего ты взял?
0
16 / 16 / 10
Регистрация: 13.02.2013
Сообщений: 75
21.11.2015, 01:08
Цитата Сообщение от bi4ugan Посмотреть сообщение
Нашел проблему
C++Выделить код
1
Form1->SymbolTable->ColCount = weightSymb;
Если ты утверждаешь что проблема именно здесь, то попробуй StringGrid по указателю в конструктор передать
0
 Аватар для Lelik-pahan
1709 / 905 / 207
Регистрация: 25.11.2009
Сообщений: 1,850
21.11.2015, 12:12
Цитата Сообщение от bi4ugan Посмотреть сообщение
Только что увидел, что подсчитывает символы не верно, все оно норм подсчитывает, з чего ты взял?
Посмотри внимательно, твоя программа не учитывает последний введённый символ. Правда, я для ввода использовал Edit, а не Memo. Если в Memo есть перенос на следующую строку, тогда это незаметно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.11.2015, 12:12
Помогаю со студенческими работами здесь

Не могу определить ошибку в коде. Написано все с книги
Написал код с книги, перепроверил. Xcode ругается, проверил в онлайн компиляторе, ошибка такая: :(.text.startup+0x1bb): undefined reference...

Двумерный массив. Поиск нулей.Не могу найти ошибку ошибку в коде
Вот,например массив 5 5 0 1 0 1 0 1 1 1 1 1 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 считываются два числа m и n и далее в выходной...

Не могу найти ошибку. Нажимаю на клавишу, выдает ошибку
uses ABCObjects,GraphABC; const Image_0 = '0_765e9_6a3e424a_S.png'; var p:PictureABC;speed:integer; procedure...

Структура: Не могу понять, почему выдает ошибку и как собственно эту ошибку можно исправить?
Привет,не могу понять почему ошибку выдает и как сбстно эту ошибку можно исправить? #include &lt;stdio.h&gt; #include...

Не могу найти ошибку в программе(для просмотра картинок):кнопка НАЗАД не работает(не становится активной) Найдите ошибку.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru