Fix EXCEPTION (0XC0000094) Integer Division by Zero Error
This crash happens when a program tries to divide an integer by zero. The fix depends on the app — update drivers, patch the software, or check your code.
Quick Answer
Update your drivers (especially graphics and chipset), patch the crashing app, or if you're coding, add a check for zero before dividing. Restart cleanly after each step.
What's actually happening
0XC0000094 is the Windows exception code for an integer division by zero. In simpler terms: your program tried to do x / 0, and the CPU said nope. This isn't a hardware problem — it's a logic bug in the software. I've seen this pop up in old accounting software, custom business apps, and even some video games that do weird math with zero-length vectors. One time I had a client whose payroll system crashed mid-calc because a discount field defaulted to 0 instead of 1. It's almost always a programming oversight that slipped through testing.
The fix depends on what is crashing. If it's a third-party app, you're stuck hunting for patches or workarounds. If you wrote the code, you need to guard against zero. Let's walk through it.
Step-by-step fixes
- Restart the app and your PC — sounds dumb, but I've seen transient memory corruption cause a divide-by-zero in a wild pointer. Reboot clears that out. Do this first.
- Update your graphics driver — many 0XC0000094 crashes happen in GPU-accelerated apps. Go to NVIDIA, AMD, or Intel's site and grab the latest. Avoid Windows Update for this — it's often behind. I fixed a rendering crash in a CAD app with this exact step last month.
- Update the crashing program — check the vendor's website for patches. If it's a custom line-of-business app, call their support. They've probably seen this bug before and pushed a hotfix.
- Check for corrupted data — sometimes a config file or database field has a 0 where it shouldn't. Look for any recent bad input or file edits. I once traced this to a CSV import where a salary column was accidentally blank.
- If you're a developer — wrap your division in a zero check:
In C/C++, you can also useif (denominator == 0) { handleError(); } else { result = numerator / denominator; }__try/__except(EXCEPTION_INT_DIVIDE_BY_ZERO)to catch it, but prevention is cleaner.
If the main fix doesn't work
For gamers or GPU-heavy apps
- Disable hardware acceleration in the app's settings. This forces software rendering and avoids the GPU math path.
- Run the app in compatibility mode for an older Windows version (right-click the .exe, Properties > Compatibility).
For old legacy software
- Check if you're running it on a modern multi-core CPU. Some old programs had bugs triggered by parallel processing. Set CPU affinity to a single core using Task Manager.
- Reinstall the app — a clean install can fix corrupted binaries.
For custom code
- Add input validation on any user-supplied numbers. Users will type 0 into a percentage field. They won't mean to.
- Use a debugger (like WinDbg or Visual Studio) to catch the exact line. The call stack will show you where the zero came from.
How to prevent this from coming back
- Keep drivers and software updated — this is the number one cause I see in the wild.
- For developers: always validate division inputs. Use assertions during development. Add unit tests that feed zero into your functions.
- Set your IDE to warn on potential divide-by-zero. Most compilers have a flag:
/wd4723in MSVC or-Wdiv-by-zeroin GCC. - If you're using third-party libraries, check their issue tracker. Sometimes the bug is in their code, not yours.
Bottom line: 0XC0000094 is always a software logic mistake. Fix it upstream — update the app or your code — and you won't see it again.
Was this solution helpful?