|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
30.05.2010, 01:19 | #1 |
Пользователь
Регистрация: 29.05.2010
Сообщений: 21
|
Длл библиотека на С++
Всем привет
Я пишу курсовую. Одна из частей - написать длл библиотеку на С++. Сам в С++ почти не разбираюсь, начал только его изучать. Суть такая В длл две функции - сравнения и сортировки. Функции сортировки передается массив строк, потом две строки передаются функции сравнения Ошибка: "cannot convert parametr 1 from char to chat[]" Заголовки функций такие: void WINAPI Srav(char s1[], const char s2[], bool OneMore) void WINAPI Sort(char iArray[], const int Mas_4isla_Razmer, bool Vector) s1 и s2 - строки, iArray - массив строк Помогите, пожалуйста, нюансов многих не знаю |
30.05.2010, 06:53 | #2 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,760
|
Показывайте как их вызываете.
|
30.05.2010, 11:05 | #3 |
Пользователь
Регистрация: 29.05.2010
Сообщений: 21
|
Текст программы
Функция сортировки вызывает сравнение
Код:
Последний раз редактировалось Stilet; 31.05.2010 в 13:07. |
31.05.2010, 10:57 | #4 | |
Старожил
Регистрация: 21.03.2009
Сообщений: 2,193
|
Код:
Код:
Таким образом, вы вместо массива передаете в качестве аргумента элемент массива (вместо char[] - char). Именно об этом вам компилятор и говорит. Что вы тут хотели сделать? Цитата:
From Stilet: Уже поправил.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта Тема на форуме, посвященная ему же Последний раз редактировалось Stilet; 31.05.2010 в 13:08. |
|
31.05.2010, 12:46 | #5 |
Пользователь
Регистрация: 29.05.2010
Сообщений: 21
|
Дело в том, что я уже пробовал писать вот так:
void WINAPI Srav(char s1, char s2, bool OneMore) Но в этом случае у меня при компиляции 14 ошибок двух типов 1. 'strlen': cannot convert parametr 1 from char to const char (при всяком использование strlen такая ошибка) 2. subscript requires array or pointer type(когда я сравниваю символы: s1[kk] > s2[kk], например. Просто в Паскале так можно, поэтому подумал, что и в С++ можно) При "char s1[], char s2[]" только две ошибки, когда я вызываю функцию Srav |
31.05.2010, 12:57 | #6 |
Старожил
Регистрация: 21.03.2009
Сообщений: 2,193
|
Вам нужно работать со строкой. Зачем вы передаете функции отдельный символ?
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта Тема на форуме, посвященная ему же |
31.05.2010, 13:01 | #7 |
Пользователь
Регистрация: 29.05.2010
Сообщений: 21
|
iArray - это массив строк
|
31.05.2010, 13:10 | #8 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Мне помнится что строка передается по указателю:
void WINAPI Srav(char* s1, char* s2, bool OneMore)
I'm learning to live...
|
31.05.2010, 13:23 | #9 |
Пользователь
Регистрация: 29.05.2010
Сообщений: 21
|
Сделал, сейчас выглядит все вот так:
Код:
2 таких: "cannot convert parametr 1 drom 'char' to 'char*'(это в строках, где вызываю функцию сравнения) " '==':conversion from 'char' to 'int' "(строчка if (s1[strlen(s1)] == "0") OneMore = !OneMore; ) " '==': 'int' differs in levels of indirection from 'char[2]'"(эта же строчка) |
31.05.2010, 13:36 | #10 |
Я
Форумчанин
Регистрация: 24.04.2010
Сообщений: 693
|
Код:
Все персонажи вымышлены, все совпадения случайны.
Если жизнь игра, тогда я её разработчик ©. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Длл на х32 | CrystaLize | Общие вопросы C/C++ | 1 | 25.12.2009 17:58 |
Ошибка в длл | Яр|/||< (^_^) | Общие вопросы Delphi | 2 | 16.10.2009 15:58 |
ДЛЛ на gcс | Иллидан | Общие вопросы C/C++ | 1 | 12.10.2008 22:11 |
Фрэймы из ДЛЛ | SunKnight | Общие вопросы Delphi | 4 | 06.01.2008 16:32 |
Использование длл | Anatolij | Win Api | 1 | 02.01.2007 19:54 |