Understanding this line " ? HIGH : LOW; "

So if I did get a book or tutorial on the basics of C++ it would effectively contain 'misinformation' for my purposes.

You need to understand what parts of the code are hardware specific (such as fopen()) and what parts are generic data manipulation/storage/allocation functions.

Most of the generic stuff will work on the Arduino. The hardware specific stuff will not.

There are some generic features that are not supported, mostly dealing with floating point processing, but most stuff is supported. An understanding of the hardware you are dealing with, and the limits that it comes with, will make understanding the language, and what is and is not supported easier.