Does each microcontroller line have its own programming language/syntax?
The language in this case is exactly the same.  The Arduino environment happens to have some extra libraries (just more C code) that 'wrap' the access to the actual hardware registers (DDRx, PORTx, INx, etc.) with slightly more user-friendly functions.  This increases the overhead (more instructions need to be executed for the same operation) but increases flexibility as it is "simple" to write a program that uses only these calls, then retarget it for a different chip (say, an arduino mega) and the library will handle the proper mapping internally.  

There aren't really any 'standard' APIs for really low-level access across chips from different vendors.  However, all of the low-level access is done in the same way - reads and writes to fixed memory addresses - so the overall access method will be similar between different parts, just the details and names will be different.  Perhaps one will just provide header files with huge lists of #defines register addresses cast to pointers.  Or perhaps the header files will use structures to keep things organized with a bit of a hierarchy.  Some manufacturers may also provide higher-level APIs.  This can be very useful for peripherals which are complex and difficult to configure.  GPIO is very simple, but something like a USB controller with DMA support could have hundreds of registers.  Generally API documentation will be provided with the vendor-supplied toolchain.  

So the bottom line is yes, you will need to learn some new register names, but the language is still C++ (or C, assembly, or perhaps something more esoteric).