Ошибка E0167 аргумент типа "const char *" несовместим с параметром типа "char *"
Помогите, пожалуйста решить эту проблему. Самое сложное, а именно подключение библиотеки я выполнила, а эта проблема мешает
#include <conio.h>
#include <iostream>
#include <string>
#include "hunspelldll.h"
using namespace std;
void main(){
Hunspell* spellObj = (Hunspell*)hunspell_initialize("ru_RU.aff","ru_RU.dic");
// ^change * type ^cast returned void* to type that will be used later
char str[60];
cin >> str;
int result = hunspell_spell(spellObj, str);
if (result == 0)
cout << "Spelling error!";
else
cout << "Correct Spelling!";
hunspell_uninitialize(spellObj /*SpellObject is undefined*/);
// ^use correct variable
}
Ответы (2 шт):
Автор решения: maestro
→ Ссылка
Когда вы передаёте в функцию строковый литерал, он имеет тип const char*. Если же функция принимает параметр типа char*, то надо передать ей такую строку, которую можно изменять. Например, так:
char c1[] = "ru_RU.aff";
char c2[] = "ru_RU.dic";
hunspell_initialize(c1, c2);
Автор решения: ARRAYBOW YouTube
→ Ссылка
Hunspell* spellObj = (Hunspell*)hunspell_initialize((char*)"ru_RU.aff",(char*)"ru_RU.dic");