Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.02.2019, 16:39   #1
Kake
Новичок
Джуниор
 
Регистрация: 15.02.2019
Сообщений: 2
По умолчанию Ошибки компиляции

Помогите пожалуйста разобраться почему ошибки

Код:
Серьезность    Код    Описание    Строка    Состояние подавления
Ошибка (активно)    E0144    значение типа "const char *" нельзя использовать для инициализации сущности типа "char *"    5    
Ошибка (активно)    E0144    значение типа "const char *" нельзя использовать для инициализации сущности типа "char *"    6    
Ошибка (активно)    E0144    значение типа "const char *" нельзя использовать для инициализации сущности типа "char *"    7    
Ошибка (активно)    E0144    значение типа "const char *" нельзя использовать для инициализации сущности типа "char *"    8    
Ошибка (активно)    E0144    значение типа "const char *" нельзя использовать для инициализации сущности типа "char *"    9    
Ошибка (активно)    E0144    значение типа "const char *" нельзя использовать для инициализации сущности типа "char *"    10    
Ошибка (активно)    E0144    значение типа "const char *" нельзя использовать для инициализации сущности типа "char *"    11    
Ошибка (активно)    E0167    аргумент типа "const char *" несовместим с параметром типа "char *"    26    
Ошибка (активно)    E0167    аргумент типа "const char *" несовместим с параметром типа "char *"    32    
Ошибка (активно)    E0167    аргумент типа "const char *" несовместим с параметром типа "char *"    38    
Предупреждение    C4335    Обнаружен файл в формате Mac: преобразуйте исходный файл в формат DOS или UNIX    1    
Предупреждение    C4091    typedef : пропускается слева от "<unnamed-enum-point_hull>", когда ни одна переменная не объявлена    241    
Предупреждение    C4101    find_data: неиспользованная локальная переменная    968    
Ошибка    C2440    инициализация: невозможно преобразовать "const char [5]" в "char *"    14    
Ошибка    C2440    инициализация: невозможно преобразовать "const char [12]" в "char *"    14    
Ошибка    C2440    инициализация: невозможно преобразовать "const char [11]" в "char *"    14    
Ошибка    C2440    инициализация: невозможно преобразовать "const char [31]" в "char *"    14    
Ошибка    C2440    инициализация: невозможно преобразовать "const char [21]" в "char *"    14    
Ошибка    C2664    "void (ALERT_TYPE,char *,...)": невозможно преобразовать аргумент 2 из "const char [26]" в "char *"    26    
Ошибка    C2664    "void (ALERT_TYPE,char *,...)": невозможно преобразовать аргумент 2 из "const char [27]" в "char *"    32    
Ошибка    C2664    "void (ALERT_TYPE,char *,...)": невозможно преобразовать аргумент 2 из "const char [27]" в "char *"    38
код

Код:
#include <extdll.h>
#include <meta_api.h>

plugin_info_t info = {
   META_INTERFACE_VERSION,            // ifvers
   "HELLO WORLD",                  // name
   "1.01",                        // version
   "2011/01/15",                  // date
   "--===((((][@KIRjkeeee))))===--",   // author
   "http://ultra.ucoz.ru",            // url
   "HELLOWORLD",                  // logtag, all caps please
   PT_ANYTIME,                     // (when) loadable
   PT_ANYPAUSE                     // (when) unloadable
};

enginefuncs_t g_engfuncs;

void WINAPI GiveFnptrsToDll(enginefuncs_t* pengfuncsFromEngine, globalvars_t *pGlobals)
{
	memcpy(&g_engfuncs, pengfuncsFromEngine, sizeof(enginefuncs_t));
}

C_DLLEXPORT int Meta_Query(char *interfaceVersion, plugin_info_t **pinfo, mutil_funcs_t *pMetaUtilFuncs)
{
	*pinfo = &info;
	ALERT(at_console, "[HELLOWORLD]: meta_query\n");
	return(TRUE);
}

C_DLLEXPORT int Meta_Attach(PLUG_LOADTIME now, META_FUNCTIONS *pFunctionTable, meta_globals_t *pMGlobals, gamedll_funcs_t *pGamedllFuncs)
{
	ALERT(at_console, "[HELLOWORLD]: meta_attach\n");
	return(TRUE);
}

C_DLLEXPORT int Meta_Detach(PLUG_LOADTIME now, PL_UNLOAD_REASON reason)
{
	ALERT(at_console, "[HELLOWORLD]: meta_detach\n");
	return(TRUE);
}
Kake вне форума Ответить с цитированием
Старый 15.02.2019, 17:17   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,493
По умолчанию

В совемренном С строки ("вот эти") являются константами.
Иными словами:
char* str = "Hello world"
теперь не катит.
Либо меняйте
char* str
на
const char* str

либо сначала выделяйте массив под строку:
char szString[] = "Hello world";
char* str = szString;

Еще можно посмотреть на флаги компилятора - например у MSVC есть флаг насчет поведения строчек в этом плане.
waleri вне форума Ответить с цитированием
Старый 15.02.2019, 18:01   #3
Kake
Новичок
Джуниор
 
Регистрация: 15.02.2019
Сообщений: 2
По умолчанию

Спасибо. Разобрался
Kake вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Три ошибки при компиляции Frioman Общие вопросы Delphi 2 30.11.2014 09:14
С++/CLI ошибки при компиляции Максим 116 Помощь студентам 1 24.12.2013 21:42
ошибки при компиляции с++ *Fantom* Помощь студентам 1 29.10.2013 08:37
ошибки при компиляции Lers Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 05.06.2013 21:25
Ошибки при компиляции vader2 Общие вопросы Delphi 11 29.09.2010 16:33