Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.53/19: Рейтинг темы: голосов - 19, средняя оценка - 4.53
13 / 10 / 3
Регистрация: 22.12.2013
Сообщений: 378
1

Инициализация графического драйвера: Deprecated conversion from string constant to 'char*'

15.09.2014, 23:58. Просмотров 3472. Ответов 27
Метки нет (Все метки)


В общем получил я некий код на компиляцию, но тут тонна ошибок. Кажется последняя из них связана с строками:
C++
1
2
  int graphdriver = DETECT, graphmode;
  initgraph(&graphdriver, &graphmode, "..\\..\\BGI"); // Сразу после последних кавычек ставит курсор и пишет ошибку.
Ошибка:
C++
1
[Warning] deprecated conversion from string constant to 'char*' [-Wwrite-strings]
Я лажу в интернете а все ошибки одинаковые и вообще не связаны с моей. Может хоть вы знаете в чем причина...
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.09.2014, 23:58
Ответы с готовыми решениями:

Deprecated conversion from string constant to 'char*'
Подскажите,как записать чаровский массив и можно ли его вообще записать вроде: char *one =...

Deprecated conversion from string constant to 'char*'
Здраствуйте, помогите мне пожалуйста! Объясните в чем проблема #include<stdlib.h> #include...

Ошибка: deprecated conversion from string constant to ‘char*’
8,2.cpp: In function ‘int main()’: 8,2.cpp:31:12: warning: deprecated conversion from string...

[Warning] deprecated conversion from string constant to 'char*'
Где ошибка?? #include<iostream> #include<windows.h> #include<ctime> using namespace std;...

27
5479 / 4874 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
16.09.2014, 00:37 2
Цитата Сообщение от Master_Yi Посмотреть сообщение
Ошибка:
Цитата Сообщение от Master_Yi Посмотреть сообщение
[Warning]
Предупреждение - не ошибка.

Добавлено через 4 минуты
Можете так избавиться:
C++
1
2
3
int graphdriver = DETECT, graphmode;
char path[] = "..\\..\\BGI";
initgraph(&graphdriver, &graphmode, path);
1
13 / 10 / 3
Регистрация: 22.12.2013
Сообщений: 378
16.09.2014, 01:11  [ТС] 3
alsav22, Да, это помогло от данного ворнинга. Но программа все-равно не запускается... ТАм список странных для меня ошибок или даже не знаю чего.. Вот они:
C++
1
2
3
4
5
6
7
8
9
10
11
C:\Users\Coshe\AppData\Local\Temp\ccUgEURh.o    ultra.cpp:(.text+0x11a): undefined reference to `putpixel'
C:\Users\Coshe\AppData\Local\Temp\ccUgEURh.o    ultra.cpp:(.text+0x18d): undefined reference to `setcolor'
C:\Users\Coshe\AppData\Local\Temp\ccUgEURh.o    ultra.cpp:(.text+0x1ac): undefined reference to `circle'
C:\Users\Coshe\AppData\Local\Temp\ccUgEURh.o    ultra.cpp:(.text+0x229): undefined reference to `setcolor'
C:\Users\Coshe\AppData\Local\Temp\ccUgEURh.o    ultra.cpp:(.text+0x253): undefined reference to `rectangle'
C:\Users\Coshe\AppData\Local\Temp\ccUgEURh.o    ultra.cpp:(.text+0x354): undefined reference to `initgraph'
C:\Users\Coshe\AppData\Local\Temp\ccUgEURh.o    ultra.cpp:(.text+0x6cf): undefined reference to `delay'
C:\Users\Coshe\AppData\Local\Temp\ccUgEURh.o    ultra.cpp:(.text+0x71d): undefined reference to `closegraph'
c:\program files (x86)\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe    C:\Users\Coshe\AppData\Local\Temp\ccUgEURh.o: bad reloc address 0x0 in section `.pdata'
c:\program files (x86)\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe    final link failed: Invalid operation
C:\Users\Coshe\Desktop\collect2.exe [Error] ld returned 1 exit status
Хочу подметить что я скачивал библиотеку graphics.h следуя совету на этом же форуме.
0
5479 / 4874 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
16.09.2014, 01:55 4
.lib подключена?
0
Эксперт С++
4967 / 3074 / 456
Регистрация: 10.11.2010
Сообщений: 11,159
Записей в блоге: 10
16.09.2014, 07:46 5
Тебе нужна вот эта библиотека: http://openbgi.sourceforge.net/
Стандартная от Borland C++ не пойдет.
0
5479 / 4874 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
16.09.2014, 07:58 6
Цитата Сообщение от Master_Yi Посмотреть сообщение
Хочу подметить что я скачивал библиотеку graphics.h следуя совету на этом же форуме
Ссылку не тему можно увидеть?
0
13 / 10 / 3
Регистрация: 22.12.2013
Сообщений: 378
16.09.2014, 09:04  [ТС] 7
alsav22, Ссылка на тему с советом на данную библиотеку: Не компилируется приложение с <graphics.h> в DEV C++

castaway, Я наверное тормоз, но вы не подскажете куда переносить файлы из данного архива? Внутри есть папка openbgi в которой 2 папки library, samples. Как я понял сэмплы это примеры но куда именно совать файлы библиотек, в lib Dev-Cpp\MinGW64\lib? Но там все файлы с окончанием .а, как-то не сходится.
Заранее благодарю за ответ.
0
Эксперт С++
4967 / 3074 / 456
Регистрация: 10.11.2010
Сообщений: 11,159
Записей в блоге: 10
16.09.2014, 09:34 8
Там находятся исходники, их надо компилировать через Makefile.
0
13 / 10 / 3
Регистрация: 22.12.2013
Сообщений: 378
16.09.2014, 13:00  [ТС] 9
castaway, Это как? Я полазил немного в интернете, я о таком еще не слышал о_О
У меня программа это все один файлик с кучей кода для рисования геометрических фигур. Неужели нельзя просто добавить рабочую библиотеку graphics.h и компилировать все эти putpixel и тому подобное как в Borland C++ ?
0
5479 / 4874 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
16.09.2014, 19:54 10
Вот бибилотека, собранная компилятором к Dev-C++5_4_0. Поместить её к либам компилятора, заголовочный файл в папку проекта. В Параметрах проекта, Параметры, Компоновщик, прописать:
-lbgi
-lgdi32
-lcomdlg32
-luuid
-loleaut32
-lole32

Попробовать скомпилировать этот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <conio.h>
#include "graphics.h"
 
int main()
{
    initwindow(400,300); // открыть окно для графики
                         // размером 400 на 300 пикселей
    moveto(0,0);         // курсор в точку (0,0)
    lineto(50,50);       // отрезок в точку (50,50)
    getch();             // ждать нажатия на любую клавишу
    closegraph();        // закрыть окно с графикой
    return 0;
}
У меня работает.
1
Миниатюры
Инициализация графического драйвера: Deprecated conversion from string constant to 'char*'  
Вложения
Тип файла: rar graphics.rar (48.7 Кб, 33 просмотров)
5479 / 4874 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
16.09.2014, 20:32 11
Код посложнее (идёт как пример с исходниками).
1
Миниатюры
Инициализация графического драйвера: Deprecated conversion from string constant to 'char*'  
Вложения
Тип файла: rar graphics_sample.rar (3.7 Кб, 17 просмотров)
5479 / 4874 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
16.09.2014, 21:12 12
Если эта сборка не захочет работать, то нужно будет собрать библиотеку, из исходников, своим компилятором
0
13 / 10 / 3
Регистрация: 22.12.2013
Сообщений: 378
16.09.2014, 21:21  [ТС] 13
alsav22,
Ошибка о несовместимости чего-то...
Ваши файлы работают для Dev-C++ 5.4.2?
  • Я поместил заголовочный файл graphics.h в папку проекта так как показано на первом рисунке.
  • Поместил файл libbgi.a в папку C:\Program Files (x86)\Dev-Cpp\MinGW64\lib.
  • Написал в параметрах проекта данные как показано на втором рисунке.
  • Вписал именно ваш код и вот что говорит компилятор:
Ошибки

c:\program files (x86)\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible c:/program files (x86)/dev-cpp/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.1/../../../../lib/libbgi.a when searching for -lbgi
c:\program files (x86)\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible c:/program files (x86)/dev-cpp/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.1/../../../../lib\libbgi.a when searching for -lbgi
c:\program files (x86)\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible c:/program files (x86)/dev-cpp/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.1/../../../libbgi.a when searching for -lbgi
c:\program files (x86)\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible c:/program files (x86)/dev-cpp/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.1/../../..\libbgi.a when searching for -lbgi
c:\program files (x86)\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible c:/program files (x86)/dev-cpp/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.1/../../../../lib/libbgi.a when searching for -lbgi
c:\program files (x86)\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe skipping incompatible c:/program files (x86)/dev-cpp/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.1/../../../libbgi.a when searching for -lbgi
c:\program files (x86)\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe cannot find -lbgi
C:\Users\Coshe\Desktop\Project\collect2.exe [Error] ld returned 1 exit status

А так же, вы не могли бы прислать всю свою сборку? Все файлы что нужны для работы программы, я полный нуб в этом деле, так что если я начну собирать свою сборку компилятора - это до добра не доведет.. Ну а так же пару инструкций что и куда копировать..
0
Миниатюры
Инициализация графического драйвера: Deprecated conversion from string constant to 'char*'   Инициализация графического драйвера: Deprecated conversion from string constant to 'char*'  
13 / 10 / 3
Регистрация: 22.12.2013
Сообщений: 378
16.09.2014, 21:33  [ТС] 14
И точно такая же проблема в Dev-C++ 5.4.0 , скачал, все сделал как выше описал, проверил..
0
5479 / 4874 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
16.09.2014, 21:39 15
Цитата Сообщение от Master_Yi Посмотреть сообщение
А так же, вы не могли бы прислать всю свою сборку? Все файлы что нужны для работы программы, я полный нуб в этом деле, так что если я начну собирать свою сборку компилятора - это до добра не доведет.. Ну а так же пару инструкций что и куда копировать..
Master_Yi, вы мои л\с читаете? Результатов не вижу.
0
13 / 10 / 3
Регистрация: 22.12.2013
Сообщений: 378
16.09.2014, 21:40  [ТС] 16
alsav22,
А как же те 4 пункта действий? Я прочитал ваши сообщения 20 раз...
Показал скриншоты, все точно как вы описали, или нет? Ткните же носом в ошибки, я сам был бы рад ошибиться... А если вы про то что нужно будет собрать библиотеку, из исходников, своим компилятором то я не знаю как это делать и как это вообще работает..

А, лс, я очень благодарен вам за эти примеры, они мне действительно помогут в будущем ибо мне такие примеры еще тысячи раз делать. Но мне бы что бы они работали...
0
5479 / 4874 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
16.09.2014, 21:46 17
Есть два варианта дальнейших действий:
1) проверяем версию компилятора в Dev C++ 5.4.0.
Если не совпадает с моим, то причина в этом, и нужно будет собрать библиотеку своим компилятором (как - расскажу, и исходники для сборки выложу).
Если совпадает, то может нужно правильно его указать в проекте (как - подскажу).
2) Сразу собрать библиотеку вашим компилятором.
Выбирайте.
0
13 / 10 / 3
Регистрация: 22.12.2013
Сообщений: 378
16.09.2014, 21:51  [ТС] 18
alsav22, Знал бы я как проверить версию компилятора..
Это не оно?
Там еще один только на 32 бита.
0
Миниатюры
Инициализация графического драйвера: Deprecated conversion from string constant to 'char*'  
5479 / 4874 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
16.09.2014, 21:57 19
Master_Yi, я дико извиняюсь, но я к Dev C++ 5.4.0 подключил компилятор от Dev 4.9.9, и не заметил этого. Поэтому и не совпадает. Тогда так: или сами собираете библиотеку (это не сложно), или ждёте, когда я соберу компилятором от Dev C++ 5.4.0. Выбирайте.
Цитата Сообщение от Master_Yi Посмотреть сообщение
Знал бы я как проверить версию компилятора..
Заходите в папку bin компилятора, там будет что-то наподобие: x86_64-w64-mingw32-gcc-4.7.1.exe.
4.7.1 - это версия компилятора. Посмотрите, какой у вас для Dev C++ 5.4.0, и напишите, такой же или нет.
1
13 / 10 / 3
Регистрация: 22.12.2013
Сообщений: 378
16.09.2014, 22:00  [ТС] 20
alsav22, Я могу и подождать, времени много. Хотя с другой стороны не помешало бы уметь собирать библиотеки, если вы детально объясните как это
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.09.2014, 22:00

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

[Warning] deprecated conversion from string constant to 'char*'
В общем делаю классы, но не получается выводит ошибку. файл Selhoz.h #ifndef _SELHOZ_H_...

Передача в функцию char*([Warning] deprecated conversion from string constant to 'char*' [-Wwrite-strings])
Почему компилятор на это матерится? ObjA.Show(&quot;A&quot;); deprecated conversion from string constant...

Исправить предупреждение deprecated conversion from string constant to 'char*'
Нужно вывести предложение без повторных вхождений слов. Нужно исправить предупреждение deprecated...

Компилятор выдает предупреждение при инициализации строки:deprecated conversion from string constant to char*
#include &lt;iostream&gt; using namespace std; int main() { char *s=&quot;abcd&quot;; cout &lt;&lt; s &lt;&lt; endl; //...

Как избавиться от "deprecated conversion from string constant to ‘char*’"
Здравствуйте. У меня компилятор пишет: _.cpp:15: warning: deprecated conversion from string...

Warning: deprecated conversion from string constant
// Start or restart eluna. Returns true if started bool StartEluna() { if...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.