Back
Asciify Logo
Asciify
¯±

ASCII 176

Degree signLight shade

ASCII 176 is ° on Windows and ░ in old DOS.

° (Degree Sign) is byte 176 in Windows-1252, Unicode U+00B0. It's the degree in temperatures (20 °C), angles (90°) and coordinates (52° 31′ N). SI style puts a space before °C but none between an angle and its degree sign. If your page shows 20° instead of 20°, the text is UTF-8 and something decoded it as Windows-1252. UTF-8 needs two bytes for the degree sign, C2 B0. The B0 still comes out as °, so the value looks almost right, and the C2 turns into an extra  in front. The same stray  shows up before £, © and every other symbol in this range, which makes the problem quick to recognize. Fix the declared encoding (the Content-Type header or the meta charset) rather than deleting the Â. Watch for lookalikes too: the ordinal º (byte 186) and the ring accent ˚ (U+02DA) pass for ° on screen but not in search or parsing. Old DOS had the degree sign too, at 248. The HTML entity is °.

░ (Light Shade) is byte 176 in code page 437, the original IBM PC character set, and maps to Unicode U+2591. It's the lightest of the three shading blocks (▒ at 177, ▓ at 178, with the solid █ at 219), and text interfaces use it for backgrounds, scroll bar tracks and progress bars like ▓▓▓░░░. If you typed Alt+176 hoping for a degree sign, this is what you get: without the leading zero Windows picks from the DOS table, and Alt+0176 gives °. In C++, cout << char(176) works only when the console happens to use code page 437 or 850. It sends the single byte B0, and the console decides what B0 means: ░ under those code pages, but � under UTF-8, as on Linux or after chcp 65001. Put ░ itself in the source and set the console to UTF-8 (SetConsoleOutputCP(CP_UTF8) on Windows). Skip that step and its three UTF-8 bytes E2 96 91 show up in a code page 437 console as Γûæ. On a web page misread as Windows-1252 they turn into â–‘. The HTML entity is &blk14;.

SymbolBlock Element

Technical Details

Technical Details

Code Example

</>
#include <stdio.h>
int main(void) {
/* On Windows (code page 1252) byte 176 is °.
Modern terminals expect UTF-8, so print the code point, not the byte. */
printf("\u00B0\n"); /* UTF-8: C2 B0 */
unsigned char b = 176; /* the raw Windows-1252 byte */
printf("%d 0x%02X\n", b, b); /* 176 0xB0 */
return 0;
}

Code Example

</>
#include <stdio.h>
int main(void) {
/* Byte 176 is ░ only on a console using code page 437
(chcp 437 on Windows, or DOSBox). On a UTF-8 terminal the
lone byte 0xB0 is invalid and prints as garbage, often �. */
putchar(176);
/* char is signed on x86, so a plain char holding 0xB0 is -80.
Use unsigned char when you compare or index by byte value. */
char c = (char)176;
unsigned char u = 176;
printf("\n%d %d\n", c, u); /* -80 176 */
/* Portable: print the Unicode character as UTF-8 instead. */
printf("\u2591\n"); /* E2 96 91 */
return 0;
}

How to Type It

Windows
Hold Alt and type 0176 on the numeric keypad. Without a keypad, open the symbols panel with Win+. and pick ° from the Symbols tab.
Mac
Press Option+Shift+8. Option+K gives the ring accent ˚, which is a different character.
Linux
Press Ctrl+Shift+U, type b0, then Space. With a Compose key, press Compose, o, o.
Phone
iPhone: open the 123 keyboard and long-press 0. Android (Gboard): tap ?123, then =\< and tap °.

How to Type It

Windows
Hold Alt and type 176 on the numeric keypad, with no leading zero. Windows reads it as a DOS code and inserts ░.
Mac
There is no shortcut. Open the Character Viewer with Control+Command+Space and search for "light shade".
Linux
Press Ctrl+Shift+U, type 2591, then Space.
Phone
No phone keyboard has it. Copy it from this page.

Frequently Asked Questions

  • Put the sign in a custom number format rather than in the cell. Press Ctrl+1, pick Custom and enter `0.0" °C"`, and 21.5 displays as 21.5 °C while staying a number that SUM and charts can use. Typing 21.5°C straight into the cell turns it into text.

  • Add the minutes divided by 60 and the seconds divided by 3600 to the degrees: 52 + 31/60 + 12/3600 = 52.52. South latitudes and west longitudes become negative, so 13° 24′ W is -13.4. Mapping APIs and GPX files take coordinates in this decimal form.

  • ° followed by C. ℃ (U+2103) exists for compatibility with East Asian character sets, and Unicode prefers the two-character form. Normalization agrees: NFKC rewrites ℃ as °C, so text that mixes both can match in one system and not in another. ℉ (U+2109) works the same way for Fahrenheit.

  • Because since 1967 the SI unit has been the kelvin, not the degree Kelvin. Its symbol is K on its own, so you write 300 K with a space and no degree sign, and 300 °K is the pre-1967 style. Celsius keeps the sign because its official name is still the degree Celsius.

  • 223. The HD44780 character LCD often used with Arduino has ° at 223 in its standard A00 ROM, which is why sketches print (char)223 for a temperature display. Sending 248, the DOS byte, or 176, the Windows-1252 one, shows a different glyph.

Frequently Asked Questions

  • Build the string from two repeats and redraw it on one line: `print('\r' + '█' * done + '░' * (20 - done), end='', flush=True)`. The \r sends the cursor back to the start of the line, so each update overwrites the last one. Print a newline when it finishes, or your next output lands on the same line.

@workani&@alexluthor
Privacy & legal

Privacy

No accounts, no ads, no tracking cookies, and no cross-site tracking. The only analytics we keep are faceless — anonymous, aggregated counts of pages and searches, never tied to you. We store no IP addresses, set no tracking cookies, and build no profiles. Cloudflare hosts the site and handles requests for delivery and security.

Full privacy policy·Extension privacy·legal@asciify.dev

Attributions & licenses

Twemoji
© Twitter, Inc and other contributors · CC-BY 4.0
Noto Color Emoji
© Google · Apache 2.0
Fluent UI Emoji
© Microsoft · MIT
OpenMoji
© HfG Schwäbisch Gmünd · CC-BY-SA 4.0
Toss Face
© Viva Republica (Toss) · SIL OFL 1.1
JoyPixels
© JoyPixels Inc. · Free Limited Use License
SerenityOS Emoji
© The SerenityOS Developers · BSD-2-Clause
EmojiTwo
© EmojiTwo contributors · CC-BY 4.0
Apple Color Emoji
© Apple, Inc.
Facebook Emoji
© Meta Platforms, Inc.

Apple and Facebook emoji styles are proprietary and shown here solely for reference and comparison — a common-sense application of nominative-use / fair-use principles. asciify is not affiliated with, endorsed by, or sponsored by Apple, Inc., Meta Platforms, Inc., or any other rights holder listed above. If a rights holder requests removal of their emoji style from this site, it will be removed.

All other vendor emoji are reproduced for reference and comparison under their respective open licenses listed above.

Character names and code points from the Unicode® Standard. Unicode® and the Unicode Logo are registered trademarks of Unicode, Inc.

Privacy
© asciify.dev 2025-2026