Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.72/25: Рейтинг темы: голосов - 25, средняя оценка - 4.72
0 / 0 / 1
Регистрация: 27.03.2013
Сообщений: 57

Как перевести массив char[] в char*

13.04.2013, 16:58. Показов 5355. Ответов 35
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не знаю как перевести массив char[] в переменную char*
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.04.2013, 16:58
Ответы с готовыми решениями:

Как перевести из char** в char*?
Первый символ каждой строчки char** нужно проверить на условие, как это сделать? Наверное всё очень просто, но ответ на форуме и за его...

Как массив char[4] перевести в unsigned int?
Есть массив из 4х char символов (4-е байта), нужно его перевести в unsigned int. Я сделал втупую: unsigned int B=0; ...

Как перевести массив int в массив char
Как перевести массив int в массив char нужна помощь

35
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
13.04.2013, 18:08
Студворк — интернет-сервис помощи студентам
C++
1
2
file = fopen("test.txt", "w+");
                fprintf(file, "%s\n", szModName);
Не хочет(

Добавлено через 17 секунд
Code
1
C
Результат.
0
496 / 11 / 6
Регистрация: 10.04.2013
Сообщений: 44
13.04.2013, 18:18
Странно этот код , и оба варианта в нем отлично пишут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
    HANDLE hProcess = GetCurrentProcess();
    DWORD cbNeeded=0;
    HMODULE hMods[100];
    int i;
    if( EnumProcessModules(hProcess, hMods, sizeof(hMods), &cbNeeded))
    {
        for ( i = 0; i < (cbNeeded / sizeof(HMODULE)); i++ )
        {
            TCHAR szModName[MAX_PATH];
            if ( GetModuleFileNameEx( hProcess,(HINSTANCE)hMods[i], szModName,(MAX_PATH-1)*sizeof(TCHAR)))
            {
                _tprintf( TEXT("%s\n"), szModName); 
                std::ofstream outfile;
 
                outfile.open("test.txt", std::ios::out | std::ios::app);
            //  outfile << szModName; 
                outfile.write(szModName, strlen(szModName));
                outfile.close();    
            }                       
        }
    }
0
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
13.04.2013, 18:21
hProcess,(HINSTANCE)hMods[i], szModName,(MAX_PATH-1)*sizeof(TCHAR)))
У меня эта строка по другому выглядит.
0
496 / 11 / 6
Регистрация: 10.04.2013
Сообщений: 44
13.04.2013, 18:23
Ну так пишет у вас или нет?
0
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
13.04.2013, 18:24
Code
1
Ошибка    4   error C2664: std::basic_ostream<_Elem,_Traits>::write: невозможно преобразовать параметр 1 из "TCHAR [260]" в "const char *"  g:\launcher__1\consoleapplication1\consoleapplication1.cpp  104 1   ConsoleApplication1
Вот такая ошибка с вашим кодом.
0
496 / 11 / 6
Регистрация: 10.04.2013
Сообщений: 44
13.04.2013, 18:24
C++
1
outfile.write(&szModName[0], strlen(&szModName[0]));
И еще уберите в настройках поддержку Unicode
1
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
13.04.2013, 18:26
Code
1
                outfile.write(&szModName[0], strlen(&szModName[0]));
Code
1
Ошибка    4   error C2664: std::basic_ostream<_Elem,_Traits>::write: невозможно преобразовать параметр 1 из "TCHAR *" в "const char *"  g:\launcher__1\consoleapplication1\consoleapplication1.cpp  116 1   ConsoleApplication1
0
496 / 11 / 6
Регистрация: 10.04.2013
Сообщений: 44
13.04.2013, 18:29
Если уж пишете для Unicode так везде
C++
1
2
std::wofstream outfile;
lstrlenW(&szModName[0]) //вместо strlen
1
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
13.04.2013, 18:34
Ничего не пишет. Если удалить файл то создаёт пустой. В консоли по прежнему всё нормально.

Добавлено через 3 минуты
C++
1
2
3
4
5
                                _tprintf( TEXT("%s\n"), szModName); 
                
                std::wofstream outfile;
                outfile.open("test.txt", std::ios::out | std::ios::app);              
                lstrlenW(&szModName[0]); //вместо strlen
0
496 / 11 / 6
Регистрация: 10.04.2013
Сообщений: 44
13.04.2013, 18:35
Вместо strlen , а не всей ф-ии.
C++
1
2
3
4
5
6
                _tprintf( TEXT("%s\n"), szModName); 
                std::wofstream outfile;
 
                outfile.open(_T("test.txt"), std::ios::out | std::ios::app);
                outfile.write(&szModName[0], lstrlenW(&szModName[0]));
                outfile.close();
1
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
13.04.2013, 18:37
Я безнадёжен, док) Спасибо огромное!
0
496 / 11 / 6
Регистрация: 10.04.2013
Сообщений: 44
13.04.2013, 18:38
В настройках компилятора слейдующий раз смотрите какую кодировку используете. std::ofstream для ASCII символов, он понимал ваш TCHAR как число и писал его в файл.
0
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
13.04.2013, 18:39
Я свято верю и надеюсь что больше к С++ не вернусь =)
0
0 / 0 / 1
Регистрация: 27.03.2013
Сообщений: 57
13.04.2013, 23:52  [ТС]
Цитата Сообщение от phantom96 Посмотреть сообщение
Ок, что надо поменять чтобы вся строка в char превратилась? Вот выдаёт мне szModName путь до модуля в процесее, а только букву вытащить могу..(
Не совсем понимаю...чего тебе нужно?
0
MЫW
 Аватар для phantom96
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
14.04.2013, 00:51
Всё что нужно было уже подсказали, длл запакована и успешно контактирует с C#)
0
 Аватар для AnyOne697
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
14.04.2013, 03:21
Цитата Сообщение от phantom96 Посмотреть сообщение
Мне бы вас ещё понимать... Какой указатель?((
Просто оставлю это здесь.
А лучше читаем что-то вроде этого.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.04.2013, 03:21

Перевести массив char в переменную string
Помогите перевести массив char в переменную string

Char unsigned char signed char длинна Кааак
Здравствуйте. char l = {0,0}; l = 0xff; Почему, меня, компилятор не посылает куда подальше. Нет он конечно...

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

есть массив char. есть строка string. как присвоить значению string-a значение char-a?
есть массив char. есть строка string. как присвоить значению string-a значение char-a?

Как присвоить к новой char переменной другую char переменную с указателем
Как присвоить к новой char переменной другую char переменную с указателем #include&lt;iostream&gt; int main() { using namespace...


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

Или воспользуйтесь поиском по форуму:
36
Ответ Создать тему
Новые блоги и статьи
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы Всем привет! Хочу поделиться свежим (и довольно. . .
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения: - добавлена многоязычность - добавлено снятие скриншотов - добавлено поддержание бафов хождения по воде (для жреца, дк и шамана) - и так, по. . .
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу))) Критические ошибки, мешающие компиляции и. . .
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата) Этот документ предназначен для того, чтобы новый чат Claude мог продолжить работу без необходимости заново разбираться в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru