ReadProcessMemory и число с плавающей точкой - C#
Формулировка задачи:
Добрый вечер. Почему он пишет мне "1100775387", когда должен "19.56242943"
Можно как-то округлить? мне значения после точки не нужны...
Спасибо!
Он у меня начинает ругаться на "size"
А так все работает
{
byte[] buffer = ME.ReadMemory((IntPtr)0x0535FF18, sizeof(Int32));
label1.Text = BitConverter.ToInt32(buffer, 0).ToString();
}
И еще вот вопрос почему когда я ставлю "uint"
public byte [] ReadMemory(IntPtr adress, uint size)
ReadProcessMemory(hProcess, adress, buffer, size, out bytesRead);
public byte [] ReadMemory(IntPtr adress, int size)
{
byte[] buffer = new byte[size];
IntPtr bytesRead = IntPtr.Zero;
IntPtr hProcess = OpenProcess(ProcessAccessFlags.All, false, this.pId);
ReadProcessMemory(hProcess, adress, buffer, size, out bytesRead);
CloseHandle(hProcess);
return buffer;
}Решение задачи: «ReadProcessMemory и число с плавающей точкой»
textual
Листинг программы
// Делаем так byte[] buffer = ME.ReadMemory((IntPtr)0x0535FF18, sizeof(float)); label1.Text = BitConverter.ToSingle(buffer, 0).ToString(); // Или так byte[] buffer = ME.ReadMemory((IntPtr)0x0535FF18, sizeof(double)); label1.Text = BitConverter.ToDouble(buffer, 0).ToString();