Главная

Преобразование типов

Народ не кидайтесь, знаю вопрос из азов, но что–то не могу найти нигде.
Как в С++ происходит(делается) преобразование типов?
нужно char преобразовать в int.
в паскале за это отвечали спец функции

Re: Преобразование типов

Смотря чего хочешь добиться:
если 'Ф' — 148, то
char c = 'Ф';
int i = c;

если '1' — 1, то пробуй atoi()

Re: Преобразование типов

Спасибо, преобразовать получилось но теперь затычка в другом.
В общем. Требуется считать из файла значение 2–го байта.
Использую для этого класс fstream;

#include iostream
#include fstream

int main()
{
int pos = 1;
char pos1 = pos;
ifstream test(«Имя файла»);
char ch = test.get(pos1);
int year = ch;
year = year +1900;
cout year endl;
}

но ругается на методе get()
насколько я понял неправильно указываю позицию для чтения.
как тут быть?

Re: Преобразование типов

Сначала поставь указатель потока в требуемую позицию (seekg) — затем считай из него переменную нужного тебе типа (оператор >>).

А лучше пока пользоваться С–шными функциями доступа к файлам (open/fopen и т.д.) Либо бери книжку по С++ и почитай хотя–бы базовые вещи.

Удачи! ;–)

Re: Преобразование типов

Спасибо за помощь.

На С не хочу распыляться, т.к. на нем не программировал и наверно не буду.

А какую книжку посоветуешь?
Стратупурса я сейчас пытаюсь читать но там много написано о самой концепции ООП. Концепцию я в общем–то понял, а вот примеров там маловато. ;–) Примеры восновном про классы, а описания классов как таковых нет.

Re: Преобразование типов

Ты, наверное, имел ввиду Страуструппа??
В таких книгах и не должны описываться классы. Классы описываются в специализированных книгах об API. Если пишешь под BeOS — залезь в BeBook — отыщи BFile — всё просто и понятно (по–моему, в разделе Storage Kit).
Если же не хочется копаться — самый простой вариант:
----------------–
fh = fopen(имяфайла, “r”);
fgetc(fh);
int i = fgetc(fh);
fclose(fh);
----------------–

Re: Преобразование типов

Пардон описался… :) Страуструппа

Спасибо за еще одну подсказку.

с API не совсем хотелось связываться, т.к. пишу кросплатфарменное, пока консольное. Хотелось бы стандартными средствами обойтись, которые есть во всех компиляторах, вне зависимости от Оси, хотя в первую очередь это проект под BeOS.

Re: Преобразование типов

В Старуструпе есть вначале обзор синтаксиса. Да и затем разбор материала идет в несколько этапов на разных уровнях сложности. И примеры кое–какие есть. Вполне сгодится если сначала его штудировать.

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Allowed HTML tags: <a> <em> <i> <img> <strong> <b> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.

Подробнее о форматировании

CAPTCHA
Введите перечисленные символы, чтобы мы убедились, что вы не робот. Не требуется для зарегистрированных пользователей.
8
p
5
i
f
2
Enter the code without spaces and pay attention to upper/lower case.