Programming Arduino in plain C or C++

Hi COde7, I am intrigued by your question but am a little confused on what you want to do.
Are you planning to interface your control program with the arduino using low level functions like pinMode, digitalWrite, digitalRead etc? If not, how would you use these functions in your control program?

Just curious, it sounds like an interesting project.

Yes, the program will use functions like pinMode, digitalWrite, digitalRead to interface with multiple Arduinos, collecting data, processing it and then sending data. I'm planning to use one thread per board...

If the purpose of the arduinos is to perform i/o on behalf of the central control program then I can't see that using those low level commands is the best way to do it. Why not interface at a higher level with commands like move, turn, get position etc and let the arduinos map these to physical i/o devices.