.C came first. I don’t usually use it though; I usually use .cc or .cxx, but if I’m making some tiny test source, I often use .C. I’m strongly opposed to the .cpp extension because calling C++ “CPP” leads to confusion with the preexisting (before C++) use of the initialism to refer to the C preprocessor. There’s a reason why CPPFLAGS refers to preprocessor flags and CXXFLAGS refers to C++ flags.
.C
came first. I don’t usually use it though; I usually use.cc
or.cxx
, but if I’m making some tiny test source, I often use.C
. I’m strongly opposed to the.cpp
extension because calling C++ “CPP” leads to confusion with the preexisting (before C++) use of the initialism to refer to the C preprocessor. There’s a reason why CPPFLAGS refers to preprocessor flags and CXXFLAGS refers to C++ flags.Just use
.C++
But then the filename wouldn’t be
/^[[:alnum:]._-]*~*$/
.