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

Вывод содержимого структуры COMMPROP на консоль - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Лишнее удаление родителя при создании класса наследника http://www.cyberforum.ru/cpp-beginners/thread1211116.html
Не могу понять откуда в выводе программы появляется первая надпись "delete A". По идее надписей "delete" должно быть столько же, сколько и "create". Или я не прав? #include <iostream> class A{ private: int a;
C++ Перегрузка операторов при работе с матрицей Ребята, помогите пожалуйста исправить ошибку. У меня в программе вроде не работает два оператор-функции. С ними работаю первый раз. За грубейшие ошибки извиняюсь. :( Вот моя программа: #include "stdafx.h" #include <iostream> using namespace std; class Matrix http://www.cyberforum.ru/cpp-beginners/thread1211106.html
C++ Сохранение данных массива из файла в виде матрицы
В файле данные одномерного массива, нужно эти данные сохранить в другой файл в виде матрицы 3x5, подскажите как это сделать. Пишу курсач, застрял на этом моменте. Вот код который написал: #include <windows.h> #include <iostream> #include <fstream> #include <string> using namespace std;
В главной функции ввод двумерного массива с файла и вывод полученных результатов в конец входного файла C++
Составить программу на языке C++, состоящую из двух функций с использованием указателей. В главной функции выполнить ввод двумерного массива с файла и вывод полученных результатов в конец входного файла. В вызываемой функции выполнить обработку двумерного массива. Дана матрица n на n. Сформировать новую матрицу n+1 на n+1, где n+1 столбцом является min каждой строки, а n+1 строкой — max...
C++ Вычислить значение выражения http://www.cyberforum.ru/cpp-beginners/thread1211058.html
Составить программу на языке С++ для обработки одномерных массивов с использованием указателей: 1. Ввести n элементов одномерного массива с входного файла; 2. Вычислить указанное выражение; 3. Вывести значение указанного выражения в выводной файл.
C++ C++ обработка двумерного массива с использованием указателей и входных и выходных файлов Составить программу на языке C++ для обработки двумерных массивов с использованием указателей и входных и выходных файлов. Дана матрица n на n. Сформировать новую матрицу n+1 на n+1, где n+1 столбцом является min каждой строки, а n+1 строкой — max каждого столбца; последний элемент а равен сумме max строк и min всех столбцов. Исходный код: #include <iostream> using namespace std; ... подробнее

Показать сообщение отдельно
Simulkin Stas
75 / 75 / 2
Регистрация: 02.12.2011
Сообщений: 293
18.06.2014, 09:54     Вывод содержимого структуры COMMPROP на консоль
...доброго времени суток, уважаемые форумчане!... не могу понять как вывести содержимое структуры на экран...вот фрагмент кода:

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
// COM_1.cpp: определяет точку входа для консольного приложения.
//
// #include <conio.h>
#include "stdafx.h"
#include <windows.h>
#include <iostream>
using namespace std;
 
 HANDLE hSerial;
 COMMPROP *pr; 
int _tmain(int argc, _TCHAR* argv[])
{
LPCTSTR sPortName = L"COM1"; 
    hSerial = ::CreateFile(sPortName, GENERIC_READ | GENERIC_WRITE,0,0,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);
 
   if(hSerial==INVALID_HANDLE_VALUE)
    {
      if(GetLastError()==ERROR_FILE_NOT_FOUND)
        {
           cout << "Serial port does not exist.\n";
        }
       cout << "Some other error occurred.\n";
    }
 
 DCB dcbSerialParams = {0};
 dcbSerialParams.DCBlength=sizeof(dcbSerialParams);
  if (!GetCommState(hSerial, &dcbSerialParams))
   {
      cout << "Getting state error\n";
   }
 dcbSerialParams.BaudRate=CBR_9600;
 dcbSerialParams.ByteSize=8;
 dcbSerialParams.StopBits=ONESTOPBIT;
 dcbSerialParams.Parity=NOPARITY;
  if(!SetCommState(hSerial, &dcbSerialParams))
   {
      cout << "Error setting serial port state\n";
   }
 
  pr=(COMMPROP*)HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,sizeof(COMMPROP)); 
   GetCommProperties(hSerial, pr); 
  if(pr->wPacketLength != sizeof(COMMPROP)) 
   {
    { 
       pr=(COMMPROP*)HeapReAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,pr,pr->wPacketLength); 
       pr->dwProvSpec1=COMMPROP_INITIALIZED; 
       GetCommProperties(hSerial,pr); 
    }
 
//. . . Вывод содержимого структуры COMMPROP
 
HeapFree(GetProcessHeap(),0,pr); 
CloseHandle(hSerial); 
//. . . 
 }
     system("pause");
    return 0;
}
...т. е., что нужно дописать вместо строки № 50 данного фрагмента...
...а вот сама структура:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 typedef struct _COMMPROP {{ 
WORD wPacketLength; // packet size, in bytes 
WORD wPacketVersion; // packet version 
DWORD dwServiceMask; // services implemented 
DWORD dwReserved1; // reserved 
DWORD dwMaxTxQueue; // max Tx bufsize, in bytes 
DWORD dwMaxRxQueue; // max Rx bufsize, in bytes 
DWORD dwMaxBaud; // max baud rate, in bps 
DWORD dwProvSubType; // specific provider type 
DWORD dwProvCapabilities; // capabilities supported 
DWORD dwSettableParams; // changable parameters 
DWORD dwSettableBaud; // allowable baud rates 
WORD wSettableData; // allowable byte sizes 
WORD wSettableStopParity; // stop bits/parity allowed 
DWORD dwCurrentTxQueue; // Tx buffer size, in bytes 
DWORD dwCurrentRxQueue; // Rx buffer size, in bytes 
DWORD dwProvSpec1; // provider-specific data 
DWORD dwProvSpec2; // provider-specific data 
WCHAR wcProvChar[1]; // provider-specific data 
} COMMPROP;
... это стандартная структура с описанием возможностей порта... заранее благодарен за ответ...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru