crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Помогитеее!Не знаю, что делать с преобразованием типов..., Ребят выручите, курсовик прогорает...
Shahid
  опции профиля:
сообщение 3.12.2008, 2:45
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 11
Регистрация: 3.12.2008
Пользователь №: 441

Спасибо сказали: 0 раз(а)




Репутация:   0  


Уважаемые форумчане помогите плиззз разобраться с ошибками в моей проге...
Воообщем моя программа создает цифровую подпись к файлам...
Прилагаю архив с текстом проги: http://dump.ru/file/1275115

Компилятор выводит ошибки что не может преобразовать тип вот в этих строках:
privateKey[i] = tempChar;
1>.\mainwindow.cpp(148) : error C2440: '=' : cannot convert from 'QChar' to 'unsigned char'
FILE* signedFile = fopen ( signedFileName, "r" );
1>.\mainwindow.cpp(179) : error C2664: 'fopen' : cannot convert parameter 1 from 'QString' to 'const char *'
FILE* eSign = fopen ( signedFileName+".esign", "w" );
1>.\mainwindow.cpp(183) : error C2664: 'fopen' : cannot convert parameter 1 from 'const QString' to 'const char *'
signature[i] = tempChar;
1>.\mainwindow.cpp(201) : error C2440: '=' : cannot convert from 'QChar' to 'unsigned char'

Посмотрите пожаалуйста, без вас не знаю что буду делать, это моя последняя надежда...
Заранее спасибо!!!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 3.12.2008, 8:05
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Shahid, а где pro-файл?

Shahid, стоит ли делать такие вставки при програмировании на Qt:
_asm
{
push eax
mov eax, tempInt
rol eax, 1
mov tempInt, eax
pop eax    
}


Цитата(Shahid @ 3.12.2008, 5:45) *
privateKey[i] = tempChar;
1>.\mainwindow.cpp(148) : error C2440: '=' : cannot convert from 'QChar' to 'unsigned char'

unsigned char privateKey[8];
QChar tempChar;
см. QChar::toAscii()


Цитата(Shahid @ 3.12.2008, 5:45) *
FILE* signedFile = fopen ( signedFileName, "r" );
1>.\mainwindow.cpp(179) : error C2664: 'fopen' : cannot convert parameter 1 from 'QString' to 'const char *'
FILE* eSign = fopen ( signedFileName+".esign", "w" );
1>.\mainwindow.cpp(183) : error C2664: 'fopen' : cannot convert parameter 1 from 'const QString' to 'const char *'
signature[i] = tempChar;
1>.\mainwindow.cpp(201) : error C2440: '=' : cannot convert from 'QChar' to 'unsigned char'
аналогично предыдущей
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Shahid
  опции профиля:
сообщение 3.12.2008, 12:19
Сообщение #3


Студент
*

Группа: Новичок
Сообщений: 11
Регистрация: 3.12.2008
Пользователь №: 441

Спасибо сказали: 0 раз(а)




Репутация:   0  


Litkevich Yuriy, с ассемблерными вставками все нормально, я компилирую в MSVisual C++.Там ассемблерные вставки нормально распознаются.

Цитата(Litkevich Yuriy @ 3.12.2008, 8:05) *
см. QChar::toAscii()

Спасибо, попробую...

FILE* signedFile = fopen ( signedFileName, "r" );
1>.\mainwindow.cpp(179) : error C2664: 'fopen' : cannot convert parameter 1 from 'QString' to 'const char *'
А вот здесь как сделать преобразование??? Ведь тут немного другое, здесь из QString в const char *, а там было из QChar в unsigned char

И еще вопросик я сделал заставку при запуске проги, но она появляется в центре экрана и сразу же пропадает...Как мне сделать задержку, чтобы заставка показывалась пару секунд?
А как сделать, чтобы окно программы появлялось в нужном мне месте экрана, а то оно появляется всегда в левой верхней части экрана....
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 3.12.2008, 12:31
Сообщение #4


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(Shahid @ 3.12.2008, 15:19) *
с ассемблерными вставками все нормально,
несогласен, их лучше вынести в отдельный файл в отдельные функции, а в файле где ты занимаешься высокоуровневым програмированием вызывать эти функции.

Цитата(Shahid @ 3.12.2008, 15:19) *
А вот здесь как сделать преобразование??? Ведь тут немного другое, здесь из QString в const char *
а ты попробуй как я сказал посмтреть в доке, только уже по QString


Цитата(Shahid @ 3.12.2008, 15:19) *
И еще вопросик я сделал заставку при запуске проги, но она появляется в центре экрана и сразу же пропадает...
вопросик не в тему. В этой теме "Не знаю, что делать с преобразованием типов" обсуждается то что в названии. Создавай отдельную.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Shahid
  опции профиля:
сообщение 3.12.2008, 12:35
Сообщение #5


Студент
*

Группа: Новичок
Сообщений: 11
Регистрация: 3.12.2008
Пользователь №: 441

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(Litkevich Yuriy @ 3.12.2008, 12:31) *
вопросик не в тему. В этой теме "Не знаю, что делать с преобразованием типов" обсуждается то что в названии. Создавай отдельную.

окей
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 26.11.2022, 23:13