C# int byte conversion [duplicate]

Вот вариант отличного решения от ephemient. Это позволяет вам передавать несколько строк в другую программу без фактического создания текстового файла и ввода, перенаправляя его в вашу программу:

(@echo.bla
@echo.bla
) | yourprog.exe

Для быстрого рабочего примера вы можете заменить yourprog.exe на more :

(@echo.bla
@echo.bla
) | more

Вывод:

bla
bla
28
задан Dested 4 September 2010 в 07:15
поделиться

1 ответ

Удивительно, но когда вы выполняете операции над байтами, вычисления будут выполняться с использованием значений int, причем сначала байты неявно приводятся к (int). Это верно и для short с, и аналогично float с повышением частоты преобразуется в double при выполнении арифметики с плавающей точкой.

Второй фрагмент эквивалентен:

byte someVar;
someVar = (int) someVar - 3;

Из-за этого вы должны привести результат обратно к (byte), чтобы компилятор принял назначение.

someVar = (byte) (someVar - 3);
30
ответ дан 28 November 2019 в 03:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: