ThereThe least brittle strategy, as mentioned in Ilja's answer, is to use the game's own modding interface.
As to the question in the title, there are OS-specific APIs to read another processes memory like ReadProcessMemory and ptrace. C++ is one of the better suited languages for interfacing with native OS APIs, so you're in luck with language choice.
Without knowing the specifics, It's hard to tell what the other programs you mention are doing exactly -- I imagine an easy way to get damage values in an RPG is to sniff network packets instead of trying to locate memory locations, but that probably wouldn't work for a single player flight simulator.
That being said, TheKeep in mind that the address of a particular variable in the memory space of a process is not always fixed and can change from run to run. You can use strategies like scanning for known values to help locate the exact address, but it may help to take a look at how players use tools like CheatEngine to scan for the correct addresses.