Как изменить тип одной или нескольких переменных? (например с int на float) С++

Достаточно сконвертить только одну правильную переменную во время операции, дальше уже пойдет приоритет типов операторов. Т.е.
float r1 = 10 / 3; // 3
float r2 = (float)10 / 3; // 3.33
float r3 = 10.0f / 3; // 3.33
float r4 = 10 / 3.0f; // 3.33
`
ОЖИДАНИЕ РЕКЛАМЫ...
21
(float)m, где m - int
замечу, что работает не для всех переменных. Для некоторых конверты надо ручками писать.
20
А для нескольких переменных? Для 8 скажем.
21
Praytic, ой, да я забыл спросить язык) Это если что для С#.
Не дочитал, сори)
Хотя, там одинаково.
А для нескольких - в каком смысле?
20
А для нескольких - в каком смысле?
Можно для одной, а можно для нескольких... Типа можно так: cout << "lol"; cout << "poo"; cout << "dauym"; cout << "wat?"; А можно так: cout << "lol << "poo" << "dauym" << "wat?"; Как-то так. ._.
9
Типа можно так: cout << "lol"; cout << "poo"; cout << "dauym"; cout << "wat?"; А можно так: cout << "lol << "poo" << "dauym" << "wat?";
Ты сейчас записал равные по результату операции занесения в поток? Пока вообще не понятно, что ты хочешь сказать.
Приведение типов происходит как описать эхнатон, для нескольких переменных - пиши для каждой приписку или пробуй такую вещь: (float) int1, int2, int3; Первое точно получится, второе - не знаю.
20
Не получается. Мне вот нужно провести арифметические операции с int переменнами и присвоить их float: first = op1_1+(op1_2+op1_3/12)/20; Но сначала наверное их надо перевести в тот же тип самому или есть другой способ?
9
Тогда примерно так:
first = op1_1+(op1_2+op1_3/12)/20;
float first_float;
first_float = (float) first;
14
Оператор приведения
Нда, всё равно не совсем то, почитай про преобразования типов в выражениях и о явном приведении типов.
(Например Шилдт Полный справочник по С++ 4-е издание конец 2й главы)
28
first = (float)(op1_1+(op1_2+op1_3/12)/20);
так короче
28
ZregerZ, и чем оно бессмысленно?
оно ничем не отличается от того что написал ген
просто короче
24
И тот и другой вариант дадут жару, если операнды целочисленные - деление может пойти совсем не так, как хотелось бы.
9
И тот и другой вариант дадут жару, если операнды целочисленные - деление может пойти совсем не так, как хотелось бы.
Понял тебя, я немного не туда завернул, подумав, что ему главное получить float-ский результат.
Автор, ну тогда ничего не остается кроме явного приведения каждой переменной.
29
Достаточно сконвертить только одну правильную переменную во время операции, дальше уже пойдет приоритет типов операторов. Т.е.
float r1 = 10 / 3; // 3
float r2 = (float)10 / 3; // 3.33
float r3 = 10.0f / 3; // 3.33
float r4 = 10 / 3.0f; // 3.33
Принятый ответ
24
alexprey, одну, но только правильно выбранную: float x = (float)5 + 10/3; не даст желаемого результата, если я ничего не путаю.
29
prog, да точно, я хотел сказать, что надо правильную выбрать
Чтобы оставить комментарий, пожалуйста, войдите на сайт.