![]() |
|
Модераторы: bsa |
![]()
|
|
| slavenk |
|
|||
|
TheAthlete ![]() Профиль Группа: Участник Сообщений: 69 Регистрация: 22.10.2009 Репутация: нет Всего: нет |
а у меня наоборот, версия со строковым литералом не работает. говорит, что невозможно преобразовать const void* в void*
а с переменной работает. могу посоветовать передавать адрес строки: func1(&str) во-вторых, лучше использовать явное преобразование вместо преобразования в стиле С: void func1(void *data) { //string mystr((char*)data); string mystr(static_cast<char*>(data)); cout << mystr << endl; } И по идее, должно работать так: #include <iostream> #include <string> using std::cout; using std::endl; using std::string; void func1(void *data) { //string mystr((char*)data); string mystr(static_cast<char*>(data)); cout << mystr << endl; } int main() { //func1("primer1"); char str[100] = "primer2"; func1(&str); return 0; } |
|||
|
||||
| volatile |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2107 Регистрация: 7.1.2011 Репутация: 16 Всего: 85 |
в данном случае func1(&str); и func1(str); являются синонимами. в обоих случаях передается указатель на строку.
а чем лучше-то? Если вы имеете ввиду хороший стиль, то тут в принципе не может идти речи о стиле.. Это все равно что советовать бомжу, одевать фрак с бабочкой. А если писать действительно в хорошем стиле, тут не нужны приведения вовсе (ни в стиле С, ни в стиле С++) Добавлено через 42 секунды зы: да и код пробуйте иногда заключать в теги... |
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |