﻿# Что можно использовать вместо инструкции "int 3" в 64\-битной программе?

64\-битная версия компилятора Visual C\+\+ не поддерживает ассемблерных вставок, поэтому использование записи вида "\_\_asm int 3" становится невозможным\. Однако существует другой, менее известный, механизм для создания прерываний во время процесса отладки — \_\_debugbreak\(\)\. Это встроенная \(intrinsic\) функция компилятора VisualC\+\+, определённая в vc\\include\\intrin\.h, которая фактически имеет ту же функциональность, что и int 3\. В отличие от int 3 данная функция является кроссплатформенной\. Аналогичной функциональностью также обладает Win32 функция DebugBreak\(\)\.

## Библиографический список

1. Обсуждение на сайте www\.stackoverflow\.com\. [Where did int 3 go?](https://stackoverflow.com/questions/3634124/why-does-int-3-generate-a-sigsegv-in-64-bit-instead-of-stopping-the-debugger)
1. MSDN Library\. [DebugBreak Function](https://msdn.microsoft.com/en-us/library/ms679297(v=vs.85).aspx)
1. MSDN Library\. [\_\_debugbreak](https://msdn.microsoft.com/en-us/library/f408b4et.aspx)