Можно ли открыть файл и прочитать единственный байт в определенной позиции, не загружая весь файл в массив?
Например, имея файл размером 10 байт и читая 5-й.
Да, используйте istream :: seekg для поиска позиции, с которой вы хотите прочитать, а затем istream :: get для чтения байта (или istream: : прочитайте , чтобы прочитать более одного байта).
Да, fseek и fgetc сделают именно это.
fseek
fgetc
http://www.cplusplus.com/reference/clibrary/cstdio/fseek/
http://www.cplusplus.com/reference/clibrary/cstdio/fgetc/