3 / 3 / 1
Регистрация: 26.04.2016
Сообщений: 69
|
||||||
1 | ||||||
Адрес переменной к типу (char*)18.01.2017, 00:33. Показов 2805. Ответов 4
Метки нет (Все метки)
Здравствуйте.
Для "запоминания" данных переменных можно использовать сериализацию аля:
0
|
18.01.2017, 00:33 | |
Ответы с готовыми решениями:
4
Адрес переменной char не выводится Как получить адрес переменной типа unsigned char? Сделать преобразование unsigned char в char, а затем типу int Вопросы по типу char |
14 / 14 / 14
Регистрация: 15.08.2016
Сообщений: 52
|
|
18.01.2017, 00:46 | 2 |
Если я правильно помню, нужно приводить к типу char* потому, что char - однобайтовый тип, следовательно char* в данном случае - строка байт, которые записываются в файл
0
|
6510 / 4086 / 1606
Регистрация: 09.05.2015
Сообщений: 9,553
|
|
18.01.2017, 00:52 | 3 |
Совершенно не важно к какому типу вы приводите адрес переменной (главное чтобы тип являлся указателем), важен только сам адрес и размер переменной. Тут приведение типа по большей части потому, что ofstream::write ожидает что тип аргумента
const char* . Машинный код ничего не знает про ваши типы, он оперирует адресами.
0
|
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
|
|
18.01.2017, 01:07 | 4 |
Сообщение было отмечено dima19972525 как решение
Решение
Никакого значения мы не получаем. Мы просто оформляем адрес переменной, как адрес абстрактного куска данных void. Чисто чтоб компилятор не ругался что бумажки неправильно оформлены. Вы, конечно, можете спросить какая связь между char и void. А связи нету, просто автор сигнатуры write маялся с похмелья и перепутал слова.
Добавлено через 5 минут Как раз важно - к void* указатели приводятся сами, а к char* - после описанных ТС приседаний. Зачем эта утренняя зарядка была нужна - загадка.
1
|
859 / 448 / 112
Регистрация: 06.07.2013
Сообщений: 1,491
|
|
18.01.2017, 11:06 | 5 |
Ну вообще при работе с буферами char* удобно использовать для дебага (видишь что в буфере) и для обращения через [], видимо он тестил свой write когда его пилил, и так и оставил
0
|
18.01.2017, 11:06 | |
18.01.2017, 11:06 | |
Помогаю со студенческими работами здесь
5
Как адрес IP перевели к типу int 32 Создать две переменных, ввести их с клавиатуры. Вывести строки: имя переменной - адрес переменной - значение п Преобразования массива с типа int к типу char Как присвоить типу char значение string? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |