Carrying one of the widest vowel-sound inventories in English — from /uː/ in 'true' to /ʌ/ in 'but' to /juː/ in 'use' — lowercase 'u' is the twenty-first letter of the Latin alphabet and the fifth vowel, accounting for roughly 2.8 % of characters in typical English corpora. In programming, its most visible role is as a prefix for Unicode escape sequences across many languages. Its ASCII code point is 117 (0x75), 32 above its uppercase counterpart 'U' at 85 (0x55), maintaining the single-bit case offset (bit 5) shared by all ASCII A–Z / a–z pairs.
// Unsigned suffixunsigned int u = 100u;unsigned long ul = 1000UL;uint8_t byte = 0xFFu; // Max unsigned byte
Unicode escape prefix: In JavaScript, Java, Python, C#, and several other languages, \u introduces a four-digit hexadecimal Unicode escape (\u0041 for 'A'). Extended forms vary — JavaScript (ES6+) supports \u{1F600} for code points beyond the Basic Multilingual Plane, while Java uses \uXXXX escape sequences and represents non-BMP characters using surrogate pairs. Python offers \U with eight hex digits. This makes 'u' a character that commonly appears when working with Unicode escapes in source code.
Unsigned type marker: In C and C++, the 'u' or 'U' suffix marks an integer literal as unsigned (42u), and the type prefix appears in unsigned int, uint8_t, uint32_t, and similar fixed-width types from <stdint.h>. In Rust, the unsigned integer family — u8, u16, u32, u64, u128 — uses 'u' as a type-name prefix, establishing a convention that has spread to several newer systems languages.
Obligatory partner to 'q': In English orthography inherited from Latin, 'u' most often follows 'q', forming the 'qu' pair pronounced /kw/ (queen, quiet, quarter). The set of English-accepted words with 'q' not followed by 'u' — qi, qat, qoph, qwerty — are borrowings from other languages or modern coinages that bypass the traditional Latin pairing.
Diacritical variants: As a vowel, 'u' supports a broad set of accented forms — ú (acute), ù (grave), û (circumflex), ü (diaeresis), ů (ring above), ū (macron), ũ (tilde), ų (ogonek), and ű (double acute). Of these, ü functions as a separate letter in Turkish, and ű is a distinct letter in Hungarian. The diaeresis form ü also carries phonemic weight in German and appears in Mandarin Pinyin romanization.
Unicode escape prefix: In JavaScript, Java, Python, C#, and several other languages, \u introduces a four-digit hexadecimal Unicode escape (\u0041 for 'A'). Extended forms vary — JavaScript (ES6+) supports \u{1F600} for code points beyond the Basic Multilingual Plane, while Java uses \uXXXX escape sequences and represents non-BMP characters using surrogate pairs. Python offers \U with eight hex digits. This makes 'u' a character that commonly appears when working with Unicode escapes in source code.
Unsigned type marker: In C and C++, the 'u' or 'U' suffix marks an integer literal as unsigned (42u), and the type prefix appears in unsigned int, uint8_t, uint32_t, and similar fixed-width types from <stdint.h>. In Rust, the unsigned integer family — u8, u16, u32, u64, u128 — uses 'u' as a type-name prefix, establishing a convention that has spread to several newer systems languages.
Obligatory partner to 'q': In English orthography inherited from Latin, 'u' most often follows 'q', forming the 'qu' pair pronounced /kw/ (queen, quiet, quarter). The set of English-accepted words with 'q' not followed by 'u' — qi, qat, qoph, qwerty — are borrowings from other languages or modern coinages that bypass the traditional Latin pairing.
Diacritical variants: As a vowel, 'u' supports a broad set of accented forms — ú (acute), ù (grave), û (circumflex), ü (diaeresis), ů (ring above), ū (macron), ũ (tilde), ų (ogonek), and ű (double acute). Of these, ü functions as a separate letter in Turkish, and ű is a distinct letter in Hungarian. The diaeresis form ü also carries phonemic weight in German and appears in Mandarin Pinyin romanization.