TrustInSoft Undefined Behavior Quest
Challenge your C and C++ skills and climb the leaderboard! This interactive game is designed specifically for C and C++ developers and testers. It challenges your skills in identifying and correcting undefined behaviors in sample code snippets. Each level presents progressively harder challenges, testing your expertise and knowledge. By successfully completing the levels, you prove your prowess and gain bragging rights on the leaderboard.
What is an Undefined Behavior?
Undefined behavior (UB) in C and C++ results from code violating language rules, leading to unpredictable outcomes like crashes or security vulnerabilities. Common causes are out-of-bounds array access, null pointer dereferencing, division by zero, and integer overflows. TrustInSoft Analyzer detects these issues early in development, ensuring software safety and correctness. By mastering UB detection and correction, developers can boost code quality and security. Test your skills with our Undefined Behavior Quest and climb the leaderboard as you identify and fix UB in C and C++ code
How to Play UB Quest
Start at Level 1
Begin with simpler undefined behaviors in C and C++ code snippets.
Find the Bug
Choose the correct answer from the multiple-choice options to progress to the next level.
Join the Leaderboard
Share your result on the leaderboard and see how you stack up to your peers.
Level Descriptions
Level 1
Introduction to common undefined behaviors. Junior developers will hopefully succeed at this.
Level 2
Slightly more complex scenarios including pointer errors and buffer overflows.
Level 3
Intermediate undefined behaviors involving memory safety issues.
Level 4
Surprising and/or implicit behaviors of the C and C++ languages.
Level 5
Challenges that include complex memory management and language specifics.
Level 6
Tricky topics for the experienced developer.