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

Вывод на экран элементов массива

01.07.2012, 22:23. Показов 2366. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеется программа которая должна в файле формата .sig искать нужную последовательность элементов, и выводить последовательность идущую сразу после нее. Подскажите пожалуйста как в borland с++ builder организовать вывод на экран искомых элементов массива.
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
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   if (OpenDialog1->Execute())
   {
    DWORD dw;
    HANDLE HHH = CreateFile((OpenDialog1->FileName).c_str(), GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);
    int len = GetFileSize(HHH,0); // длина файла
    unsigned char *InBuf = new unsigned char[len];// входной массив
    ReadFile (HHH,InBuf,len,&dw,0); //чтение данных в массив
    int DlinaPaketa = 0;
    int Begin = 0;
                 do
              {
               DlinaPaketa = InBuf[0+Begin]+256*InBuf[1+Begin];
               Begin = DlinaPaketa+2+Begin;
               unsigned char *otvet = new unsigned char[DlinaPaketa];
               for (int i=1; i<DlinaPaketa; i++)
               {
                if ((otvet[i]='u')&&(otvet[i+1]='s')&&(otvet[i+2]='e')&&(otvet[i+4]='r'))
                cout<<"USER -"<<otvet[i+6]<<otvet[i+7]<<otvet[i+8]<<otvet[i+9]<<otvet[i+10]<<endl;
                if  ((otvet[i]='p')&&(otvet[i+1]='a')&&(otvet[i+2]='s')&&(otvet[i+3]='s'))
                cout<<"PASS -"<<otvet[i+6]<<otvet[i+7]<<otvet[i+8]<<otvet[i+9]<<otvet[i+10]<<endl;
               }
              }
              while (!((Begin+1)>len));
 
 
 
 
   }
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.07.2012, 22:23
Ответы с готовыми решениями:

Не могу понять как делать вывод на экран структуры STUDENT на заполнение и вывод данных на экран
Добрый вечер. Вот задание и мой код программы на C++ Не выходит нормально реализовать 3е...

Вывод на экран чётных слов строки исправить на вывод нечётных слов
#include&lt;conio.h&gt; #include&lt;iostream.h&gt; #include&lt;string.h&gt; #include&lt;stdio.h&gt; int i,l,j,k,p,n;...

Как объявить массив на 5 элементов, вывести на экран, проинициализировать его и снова вывести на экран?
как объявить массив на 5 элементов, вывести на экран, проинициализировать его и снова вывести на...

8
 Аватар для Mr.Sandman
42 / 59 / 15
Регистрация: 19.12.2011
Сообщений: 552
01.07.2012, 22:28
Может не то что нужно но делал так
C++
1
2
3
4
5
6
7
void __fastcall TForm2::FormActivate(TObject *Sender)
{
  for (i = 0; i < High(Massiv); i++) {
    strng = strng +"  "+ IntToStr(massiv(i));
  }
  ShowMessage(string);
}
Извините за делфи попутал)
0
0 / 0 / 0
Регистрация: 23.06.2012
Сообщений: 14
02.07.2012, 16:04  [ТС]
можно поянить 4 строку пожалуйста
0
 Аватар для OmutMoren
17 / 17 / 0
Регистрация: 04.06.2012
Сообщений: 88
02.07.2012, 16:12
Ну там во первых нужно задать тип AnsiString strng = "". А далее ты просто добавляешь к уже имеющемуся тексту новое через пробел " ".
0
0 / 0 / 0
Регистрация: 23.06.2012
Сообщений: 14
03.07.2012, 12:06  [ТС]
а если делать через TMemo? как через него например вывести какую-либо строку?
0
return (true);
 Аватар для mimicria
1977 / 1112 / 221
Регистрация: 19.04.2011
Сообщений: 2,346
03.07.2012, 12:33
C++
1
Memo1->Lines->Add(IntToStr(massiv[i]));
1
0 / 0 / 0
Регистрация: 23.06.2012
Сообщений: 14
03.07.2012, 21:00  [ТС]
в итоге пришел к такой форме
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
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   if (OpenDialog1->Execute())
   {
    DWORD dw;
    HANDLE HHH = CreateFile((OpenDialog1->FileName).c_str(), GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,0);
    int len = GetFileSize(HHH,0); // длина файла
    unsigned char *InBuf = new unsigned char[len];// входной массив
    ReadFile (HHH,InBuf,len,&dw,0); //чтение данных в массив
    int DlinaPaketa = 0;
    int Begin = 0;
    char *otvet[255];
    char *otvet1[255];
    AnsiString Str1 ;
    int j=0 ;
                 do
    {
               DlinaPaketa = InBuf[0+Begin]+256*InBuf[1+Begin];
               Begin = DlinaPaketa+2+Begin;
               for (int i=1; i<DlinaPaketa; i++)
               {
               if (otvet[i]="10101010")&&(otvet[i+1]="11001010")&&(otvet[i+2]="10100010")&&(otvet[i+3]="01001010"))  { otvet[i+5]=otvet1[j]; j++ ;}
               }
    }
    while (!((Begin+1)>len));
    Str1 = IntToStr(otvet1[j]);
    Memo1->Lines->Add("PS "+Str1+" ");
 
    }
    }
Ошибку выдает в строке
C++
22
if (otvet[i]="10101010")&&(otvet[i+1]="11001010")&&(otvet[i+2]="10100010")&&(otvet[i+3]="01001010"))  { otvet[i+5]=otvet1[j]; j++ ;}
, а именно при открытии файла выдает "Project Project2.exe raised exception class EAccesViolation with message 'Acces violation at adress 00401CE0 in module 'Project2.exe'. Write of adress 0119B504'. Process stoped. Use step or run to continue." Думаю из-за того, что в builder'e нельзя таким образом присваивать элементы одного массива другому. Подскажите пожалуйста какие для этого есть специальные функции?
0
 Аватар для BRcr
4043 / 2333 / 292
Регистрация: 03.02.2011
Сообщений: 5,066
Записей в блоге: 10
03.07.2012, 22:17
char * strcpy ( char * destination, const char * source );
0
return (true);
 Аватар для mimicria
1977 / 1112 / 221
Регистрация: 19.04.2011
Сообщений: 2,346
04.07.2012, 09:13
Цитата Сообщение от Кириллььь Посмотреть сообщение
Думаю из-за того, что в builder'e нельзя таким образом присваивать элементы одного массива другому
Думаю из-за того, что вы где-то вышли за границы массивов.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.07.2012, 09:13
Помогаю со студенческими работами здесь

Вывод на экран элементов массивов, которые являются простыми числами
Здравствуйте! Пишу сюда в последней надежде на помощь! Нужно сдать две лабы последние, а как их...

С помощью рекурсивной функции осуществить вывод на экран элементов одномерного массива
С помощью рекурсивной функции осуществить вывод на экран элементов одномерного массива

Вывод на экран значений элементов типа int из одномерного массива любой длины
Написать функцию print_arr, которая предназначена для вывода на экран значений элементов типа int...

Вывод на экран значений корней и квадратов каждого из элементов массива
Введите с клавиатуры пять целочисленных элементов массива X. Выведите на экран значения корней и...

Вывод на экран элементов массива
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;vector&gt; #include &lt;iomanip&gt; #include &lt;conio.h&gt;...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
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
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru