Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] cannot convert 'std::string {aka std::basic_string<char>}' to 'const char*'

Ответить
Настройки темы
C/C++ - [решено] cannot convert 'std::string {aka std::basic_string<char>}' to 'const char*'

Аватара для Acuna

Новый участник


Сообщения: 17
Благодарности: 0

Профиль | Отправить PM | Цитировать


Всем привет!

Работаю с плюсами недавно, перехожу с PHP, и уже понял, что знакомство будет долгим :D

Возникла проблема с разными типами данных в разных функциях.

Вот у меня имеется простенькая функция:

Цитата:
string read_file (string file) {
return file;
}
Ее вывод такой:

Цитата:
cout << read_file ("C:/ru.ini");
То есть я засовываю в нее строку. Все работает отлично. Но если в ней попытаться запустить еще одну какую-либо функцию, например

Цитата:
string read_file (string file) {
FILE *fp = fopen (file, "rb");
return file;
}
возникает ошибка

Цитата:
cannot convert 'std::string {aka std::basic_string<char>}' to 'const char*' for argument '1' to 'FILE* fopen(const char*, const char*)'
То есть как я понял, в fopen должно суваться char, а я пытаюсь сунуть строку, ибо у меня введена строка.

Что тут можно сделать? Затыкнулся в самом начале)

Заранее благодарен!

Отправлено: 01:51, 27-03-2014

 
pva pva вне форума

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


Цитата Acuna:
И консольные приложения тоже можно на ней писать? »
Можно для консоли. Ява ни в чём не ущемлена. Сейчас можно даже для чиповых карт писать (думаю скоро для холодильников, пылесосов и утюгов можно будет) Несмотря на откровенную рекламу явы, я всё же приверженец С++

Цитата Acuna:
Вы имеете ввиду для С++? »
Речь идёт об инструментах разработчика в принципе (независимо от языка; существуют различные средства в зависимости от среды выполнения). Язык - это лишь средство выражения (кодирования) мысли.

Отправлено: 14:27, 26-04-2014 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата Acuna:
Iska, что Вы имеете ввиду? »
Я имею в виду ровно то, что написал: научился ли интерпретатор языка корректно понимать исходный код в UTF-8 с BOM?

Отправлено: 16:45, 26-04-2014 | #12


Аватара для Habetdin


Автор проектов


Сообщения: 3650
Благодарности: 1499

Профиль | Сайт | Отправить PM | Цитировать


Цитата pva:
чтобы проверять программу на корректность до запуска »
Но PHP - интерпретируемый язык и состояние "до запуска" не совсем возможно

Iska, а чем мешает BOM? Разве только тем, что мешает header() - но тут уже ССЗБ, если допустил какие-либо символы в выводе (кроме BOM там может оказаться много чего, даже написанного человеком - "а почему у меня header в середине скрипта не срабатывает?") до функции, которая должна вызываться до любого вывода

-------
Рекомендую: $25 на тест виртуального сервера (VPS) за регистрацию по ссылке


Отправлено: 17:45, 26-04-2014 | #13


Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата Habetdin:
Iska, а чем мешает BOM? »
На forum.farmanager.com раз за разом апологеты php требуют запрет BOM при сохранении файла из редактора по умолчанию, апеллируя тем, что, дескать, для php это некошерно, ибо не работает. Вот я и интересовался, научился ли.

Отправлено: 20:27, 26-04-2014 | #14

pva pva вне форума

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать



Цитата Habetdin:
Но PHP - интерпретируемый язык и »
Дело больше в нетипизированности, чем интерпретируемости. Вот примеры: http://ru.wikipedia.org/wiki/%D0%90%...0%BE%D1%80_PHP, ищем слово "байткод". До запуска можно проверить любой код. Было бы желание

Отправлено: 08:25, 27-04-2014 | #15


Аватара для Acuna

Новый участник


Сообщения: 17
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата:
Я имею в виду ровно то, что написал: научился ли интерпретатор языка корректно понимать исходный код в UTF-8 с BOM?
А, ну если так, то можно ответить просто: нет) Ибо незачем. Это не более, чем символ указания кодировки utf-8. А она и без этого идентифицируется безошибочно, если конечно правильно включить ее на сервере, и сохранять файлы в utf-8. Все остальное весьма доходчиво объяснил pva)

Отправлено: 15:52, 08-05-2014 | #16



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - [решено] cannot convert 'std::string {aka std::basic_string<char>}' to 'const char*'

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Ошибка во время установки Windows 2012 Std на Hyper-V (Host Win2012 Std)) Farxat Windows Server 2012/2012 R2 1 18-03-2013 14:56
[решено] Exchange 2010 std + WS2012 std bee_loky Windows Server 2012/2012 R2 1 15-01-2013 22:13
C/C++ - std::string - переделать символы в 16-bit Unicode crashtuak Программирование и базы данных 1 21-08-2012 17:19
C/C++ - int в char, когда int > char crashtuak Программирование и базы данных 2 21-08-2012 17:13
DNS/DHCP - Сетевые параметры на серверах <Windows Server 2003 Std + ISA 2006> Yappi Сетевые технологии 5 14-10-2008 13:58




 
Переход