Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 100379
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T00:34:06+00:00 2026-05-11T00:34:06+00:00

What are all the common undefined behaviours that a C++ programmer should know about?

  • 0

What are all the common undefined behaviours that a C++ programmer should know about?

Say, like:

a[i] = i++; 

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T00:34:07+00:00Added an answer on May 11, 2026 at 12:34 am

    Pointer

    • Dereferencing a NULL pointer
    • Dereferencing a pointer returned by a "new" allocation of size zero
    • Using pointers to objects whose lifetime has ended (for instance, stack allocated objects or deleted objects)
    • Dereferencing a pointer that has not yet been definitely initialized
    • Performing pointer arithmetic that yields a result outside the boundaries (either above or below) of an array.
    • Dereferencing the pointer at a location beyond the end of an array.
    • Converting pointers to objects of incompatible types
    • Using memcpy to copy overlapping buffers.

    Buffer overflows

    • Reading or writing to an object or array at an offset that is negative, or beyond the size of that object (stack/heap overflow)

    Integer Overflows

    • Signed integer overflow
    • Evaluating an expression that is not mathematically defined
    • Left-shifting values by a negative amount (right shifts by negative amounts are implementation defined)
    • Shifting values by an amount greater than or equal to the number of bits in the number (e.g. int64_t i = 1; i <<= 72 is undefined)

    Types, Cast and Const

    • Casting a numeric value into a value that can’t be represented by the target type (either directly or via static_cast)
    • Using an automatic variable before it has been definitely assigned (e.g., int i; i++; cout << i;)
    • Using the value of any object of type other than volatile or sig_atomic_t at the receipt of a signal
    • Attempting to modify a string literal or any other const object during its lifetime
    • Concatenating a narrow with a wide string literal during preprocessing

    Function and Template

    • Not returning a value from a value-returning function (directly or by flowing off from a try-block)
    • Multiple different definitions for the same entity (class, template, enumeration, inline function, static member function, etc.)
    • Infinite recursion in the instantiation of templates
    • Calling a function using different parameters or linkage to the parameters and linkage that the function is defined as using.

    OOP

    • Cascading destructions of objects with static storage duration
    • The result of assigning to partially overlapping objects
    • Recursively re-entering a function during the initialization of its static objects
    • Making virtual function calls to pure virtual functions of an object from its constructor or destructor
    • Referring to nonstatic members of objects that have not been constructed or have already been destructed

    Source file and Preprocessing

    • A non-empty source file that doesn’t end with a newline, or ends with a backslash (prior to C++11)
    • A backslash followed by a character that is not part of the specified escape codes in a character or string constant (this is implementation-defined in C++11).
    • Exceeding implementation limits (number of nested blocks, number of functions in a program, available stack space …)
    • Preprocessor numeric values that can’t be represented by a long int
    • Preprocessing directive on the left side of a function-like macro definition
    • Dynamically generating the defined token in a #if expression

    To be classified

    • Calling exit during the destruction of a program with static storage duration
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 71k
  • Answers 71k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • added an answer You want to use the an SPListItem's CreatedBy or ModifiedBy… May 11, 2026 at 1:16 pm
  • added an answer While Predicate has been introduced at the same time that… May 11, 2026 at 1:16 pm
  • added an answer This is what i needed to do.......thanks for all the… May 11, 2026 at 1:16 pm

Related Questions

No related questions found

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.