static_assert - cppreference.com (original) (raw)

| | | | | --------------------------------------- | | ---------------------------- | | #define static_assert _Static_assert | | (since C11) (removed in C23) |

This convenience macro expands to the keyword _Static_assert.

[edit] Example

#include <assert.h>   int main(void) { static_assert(2 + 2 == 4, "2+2 isn't 4"); // well-formed   static_assert(sizeof(int) < sizeof(char), // compile-time error "this program requires that int is less than char"); }

[edit] Notes

Since C23, static_assert is itself a keyword, which may also be a predefined macro, so <assert.h> no longer provides it.

[edit] References

[edit] See also