Я пытаюсь сделать работу c-функции в каком-то общедоступном коде линейной алгебры.Преобразование из строкового литерала в char *
общедоступный прототип ...
int ilaenv_(int *, char *, char *, int *, int *,int *, int *);
общедоступный код имеет вызов функции ...
nb = ilaenv_(&c__1, "DGEQRF", " ", m, n, &c_n1, &c_n1);
где т, п, c_1 и c_n1 являются целыми числами,
сообщение об ошибке есть.
C++ 11 does not allow conversation from string literal to char *.
Я не создавал код, но скачал его с сайта LAPACK. Я смущаюсь сделать слишком много изменений в общедоступном коде, который, предположительно, работает, опасаясь вводить ошибки. Однако эта ошибка проявляется в ряде функций в программе, над которой я работаю.
Как я могу это решить?
Вы можете просто произносить константу, но я не знаю, может ли это быть хорошо. –
Действительно ли это «разговор»? Используйте фактические строки ошибок. И исправьте заголовок. –
Не строгий дубликат, но это должно иметь некоторую полезную информацию: http://stackoverflow.com/questions/1704407/what-is-the-difference-between-char-s-and-char-s-in-c/ 1704433 # 1704433 – Adam