Well, those languages were running on real computers. Except that they weren't microcomputers but supercomputers (see the works of Seymour Cray).
Those computers were extremely expensive and had much more memory than the 1980s microcomputers. An individual just couldn't afford it. It was shared between students/researchers. Also had more evolved storage devices, not just standard audio cassettes.
All that allowed to develop and use compiled languages. Note that compiled languages are possible on microcomputers (there are Z80 & 6502 C compilers for instance, even if they are cross-compilers, not native) but the code takes a lot of memory. On a microcomputer, programs are generally BASIC + assembly for memory reasons (assembly being used for speed in game main loops, BASIC being used for menus, score, management, where operations were'nt time-critical).
BASIC is not as advanced as the languages you're mentionning, but it's also extremely cheap memory-wise, with tokens only taking 1 byte of memory, and interpreted by the ROM. It also provided easy access to computer hardware (input, graphics, sound), and all usually fitted in 48+16 Kb RAM. It's really not the same scale as for specialized supercomputers, even if those were older (the cray 1 clock was 80MHz, most home computers clock were a few MHz in comparison)
I was mentionning 6502 and z80 compilers, but those are relatively recent, and only runned from a more powerful machine. A native C compiler (or other language) for a 8-bit home machine (single processor, 64k RAM) is extremely unlikely and would be slow & impractical. Even assemblers weren't so common at that time (BBC micro had one, though). People used to enter hex opcode in DATA sections instead...
The first 8-bit microcomputers were just a cut-down, home version of its ancestors, affordable to everyone. Only when the 16/32 bit computers appeared that it became possible to use more evolved languages.