C Language Reference
C Language Reference
C keywords, types, operators, storage classes, qualifiers, and preprocessor building blocks.
C Language Reference
C keywords, types, operators, storage classes, qualifiers, and preprocessor building blocks.
Use reference pages to confirm names, categories, nearby facilities, and the constraints that matter before writing or reviewing code.
if, else, switch, case, defaultfor, while, do, break, continue, goto, returnvoid, char, short, int, long, float, double, signed, unsigned_Bool, _Complex, _Imaginarystruct, union, enum, typedefauto, register, static, extern, _Thread_localconst, volatile, restrict_Alignas, _Alignof, _Atomic, _Generic, _Noreturn, _Static_assertinline, sizeof, _BitIntchar, signed char, unsigned charshort, unsigned shortint, unsigned intlong, unsigned longlong long, unsigned long longfloat, double, long double_Bool_Complex forms of floating typessize_tptrdiff_tmax_align_twchar_t<stdint.h> such as int32_t, uint64_t, intptr_t, uintptr_t+, -, *, /, %&, |, ^, ~, <<, >>==, !=, <, <=, >, >=&&, ||, !=, +=, -=, *=, /=, %=&=, |=, ^=, <<=, >>=++, --[], (), . , ->,, ;, :? :(type) cast syntax& and *sizeofstaticstatic locals_Thread_localstatic#include#define#undef#if, #ifdef, #ifndef, #elif, #else, #endif#error, #line, #pragma__FILE__, __LINE__, __STDC_VERSION__For a more detailed list of macro categories and conditional-compilation patterns, see C preprocessor and macros.
int *ptr;
int (*fn)(int);
int values[10];
const char *name;
struct Point { int x; int y; };
struct Point {
int x{};
int y{};
};
int main() {
Point p{3, 4};
return p.x < p.y;
}