Uppercase A with circumflexBox T-junction pointing down
ASCII 194 is  on Windows and ┬ in old DOS.
 (Capital A with Circumflex) is byte 194 in Windows-1252, Unicode U+00C2. It's a real letter, in French words like Âge and Âme, Portuguese names like Ângela and Romanian capitals like ROMÂNIA. It also shows up as debris. C2 is the first UTF-8 byte of every character from U+0080 to U+00BF, which covers the non-breaking space, °, £ and ©, and C2 read as Windows-1252 is Â. That's why a stray  appears in front of those symbols. The tempting fix, deleting every Â, also wrecks the legitimate ones, so repair the decoding instead. The letter's own UTF-8 form is C3 82, which misreads as Â. The HTML entity is Â.
┬ (Light Down and Horizontal) is byte 194 in code page 437, the original IBM PC character set, and maps to Unicode U+252C. It's the tee on the top edge of a single-line table, where a column divider │ (179) drops down from ─ (196). It's also the console's version of the stray Â. Byte C2 starts every UTF-8 character from U+0080 to U+00BF, and a console using code page 437 draws C2 as ┬. So UTF-8 output containing °, £ or © prints as ┬░, ┬ú and ┬⌐ in cmd: a ┬ in front of a symbol means the program wrote UTF-8 and the console expected 437. In UTF-8 the tee itself is E2 94 AC, and the HTML entity is ┬.
#include <stdio.h>int main(void) {/* On Windows (code page 1252) byte 194 is Â.Modern terminals expect UTF-8, so print the code point, not the byte. */printf("\u00C2\n"); /* UTF-8: C3 82 */unsigned char b = 194; /* the raw Windows-1252 byte */printf("%d 0x%02X\n", b, b); /* 194 0xC2 */return 0;}
#include <stdio.h>int main(void) {/* Byte 194 is ┬ only on a console using code page 437(chcp 437 on Windows, or DOSBox). On a UTF-8 terminal thelone byte 0xC2 is invalid and prints as garbage, often �. */putchar(194);/* char is signed on x86, so a plain char holding 0xC2 is -62.Use unsigned char when you compare or index by byte value. */char c = (char)194;unsigned char u = 194;printf("\n%d %d\n", c, u); /* -62 194 *//* Portable: print the Unicode character as UTF-8 instead. */printf("\u252C\n"); /* E2 94 AC */return 0;}
Only delete an  that sits right before a character from U+00A0 to U+00BF, since that's where the stray ones land: `re.sub('Â(?=[\u00a0-\u00bf])', '', s)` in Python. That clears ° and £ but leaves Âge and ROMÂNIA alone. It's the fallback for text that mixes good and broken rows, where re-decoding the whole thing isn't an option.
Î at the start and end of a word, Â inside it: înainte and a urî, but câine and pâine. Both letters stand for the same sound, and the split comes from the Romanian Academy's 1993 rule. Compounds keep î where the second part begins, as in neînțeles.
Switch the console to UTF-8 so it reads the output the way your program wrote it. `chcp 65001` does that for the current window. To make it permanent, tick Beta: Use Unicode UTF-8 for worldwide language support in Windows' region settings, though that can confuse older programs that expect a legacy code page. Programs that write through the wide-character console API, as Python does, aren't affected at all.
Switch the console to UTF-8 so it reads the output the way your program wrote it. `chcp 65001` does that for the current window. To make it permanent, tick Beta: Use Unicode UTF-8 for worldwide language support in Windows' region settings, though that can confuse older programs that expect a legacy code page. Programs that write through the wide-character console API, as Python does, aren't affected at all.