Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

трудности с CharToOem - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как настроить GCC http://www.cyberforum.ru/cpp-beginners/thread47616.html
Надо что б по умолчанию дополнительно искал #include в нужной мне директории. Спасибо.
C++ Необходимо дописать значение в вывод текстового файла Имеется программа, которая выводит из списка кучи данных, требуемые нам данные (назовём "1.txt"). Но программу необходимо дописать так, чтоб из файла 2.txt считывало необходимый код, и дописывало его... http://www.cyberforum.ru/cpp-beginners/thread47573.html
Как заполнить связный список? C++
Доброго времени суток, уважаемые форумчане) Начал изучать С++, дошёл до связных списков и вот тут встала проблема... Я не понимаю как его заполнить , вернее код я написал... программа запускается...
Вывод данных из массива C++
Добрый день. Недавно начал изучать С++. Использую Microsoft Visual Studio 2008 (Другая версия под Висту не идет)...Столкнулся с такой проблемой: #include <iostream> using namespace std; int...
C++ Необходимо создать минимальный проект-образец в DEV C++ http://www.cyberforum.ru/cpp-beginners/thread47531.html
Минимальный, ну, чтобы там 2 файла, что ли было. main.cpp и functsia.cpp, Бог даст- получится- возьму его за образец... Друзья! Ну, то есть я, конечно, кодил раньше небольшие проекты и из 10-ти...
C++ Запись данных в файл Есть данные: gw=dp df=sl Нужно чтобы эти даные автоматически вставлялись в конец файла подробнее

Показать сообщение отдельно
Rififi
2359 / 1052 / 44
Регистрация: 03.05.2009
Сообщений: 2,656
18.08.2009, 19:25
VoodooMan,
я передавал константу и пытался ее править...
да ты прямо рассадник хауту "как не надо делать"

что касается стринга, то модификация через c_str() работает потому, что stl в VS хранит внутри себя строку в ASCIIZ-виде (чего сам объект std::string не делает)

для достижения гармонии между char и std::string я обычно пользуюсь таким велосипедом:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
template <
    const size_t N,
    typename _E, typename _Tr, typename _Ax,
    template <typename, typename, typename> class _S>
struct str_buf_type
{
    typedef _E char_type;
    typedef _S<char_type, _Tr, _Ax> string_type;
 
    explicit str_buf_type(string_type& str) : pstr_(&str) { buf_[0] = 0; }
    ~str_buf_type() { pstr_->assign(buf_); }
    operator char_type*() { return buf_; }
 
    static const size_t BUF_SIZE = N;
 
    char_type buf_[BUF_SIZE];
    string_type* pstr_;
};
 
template <
    const size_t N,
    typename _E, typename _Tr, typename _Ax,
    template <typename, typename, typename> class _S>
str_buf_type<N, _E, _Tr, _Ax, _S> str_buf(_S<_E, _Tr, _Ax>& s)
{
    return str_buf_type<N, _E, _Tr, _Ax, _S>(s);
}
 
// Использование с некоей функцией, которая наполняет char-буфер
std::string s;
GetCurrentDirectoryA(MAX_PATH, str_buf<MAX_PATH>(s));
 
std::wstring ws;
GetCurrentDirectoryW(MAX_PATH, str_buf<MAX_PATH>(ws));
Кривовато, но зато работоспособность этого кода гарантируется Стандартом на всех реализациях, поддерживающих онный.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru