My Slashdot username predates my current employment arrangement by about 5 years, I think. But, yeah. Back then I ran FreeBSD (which is where the name is from) on my servers, and Gentoo on my desktop. Things change
By now, though, it's not really all that surprising, given the amount of work specifically targeting other platforms (Linux among them) happening throughout the company. My team, for example, is actually specifically looking for people with a Linux background right now, because we're building a service running on it, using Docker containers for isolation.
In this particular case I just happen to know exactly what they were thinking when they were implementing this feature, because they are my colleagues (even if I don't work on the team that works on C++)
This all might make more sense if you remember that Office in some incarnation or the other now ships across three non-Windows platforms (OS X, iOS and Android), then there is the OneDrive client etc. Basically there's a whole bunch of stuff that has suddenly gone cross-plat in the past couple of years, and that's a lot of C++ code that now has to play ball with the libraries that are the de facto standard outside of the MS ecosystem. In many cases, once you start doing that, it makes sense to use the same library on Windows as well, but then you start running into those conformance issues with C99.
The other aspect is that we want people to write cross-platform C and C++ code, because it's the kind that, right now, is most easily portable between all mobile platforms - and seeing where Windows phones and tables are in terms of popularity relative to iOS and Android, MS has to encourage portability as a way to get more apps ported to Windows. You see things like Apache Cordova tools and Clang/LLDB support in VS 2015 for the same reason - they make it easier to write Android apps, for example, but more importantly, the way they encourage writing those apps just happens to be the one that emphasizes portable code. Now that is more geared towards C++, but the question of popular libraries written in C also comes up there.
I don't recall which comment mode this works with, but also try <ecode> instead of <code>. This also makes it unnecessary to escape < and > between the tags.
VS2013 seems to understand a bit more or C99, but that isn't because Microsoft would suddenly have started caring about their C compiler. Their C++ compiler got a bit of an upgrade wrt. more recent changes to the C++ standard, and the C compiler understanding a few C99 idioms is largely a side-effect/waste-product of that process.
Not quite. VS 2013 actually saw a bunch of C-specific C99 features such as designated initializers for structs. The main reason why this was done is because there are now quite a few popular open source libraries that use those features, and VC is the only compiler that cannot handle them, which made it a pain to port them to Windows.
stdio.h and cstdio are both valid in C++. However, there is a slight difference - cstdio is only guaranteed to define the identifiers that it provides in namespace std, while stdio.h makes the same guarantee only for the global namespace. In practice, they are usually both backed by the same header that does both, so you'll get both - but relying on that is non-portable. Since he doesn't use std:: to refer to those identifiers, "stdio.h" is the correct header for him to include.
"stdio.h" searches the directory containing the current source file first, then the include directories.
The standard itself doesn't have any notion of "directory containing the current source file" or "include directories", actually. It just says that "..." does some form of implementation-defined search, which, if it fails, falls back to <...>.
OP is likely confusing the special exception that int main() gets for a general rule. For main, you can indeed return nothing, despite its return type, and that is equivalent to returning 0. This works in both C and C++.
It's still not the same thing. In C, you can declare a function without specifying the argument types, but then define it with specific types in a different translation unit. In C++, the definition and the declaration must match - if you declare it as int foo(...), then you must also define it in the same way (which renders it effectively useless, since without any named arguments you won't have anything to pass to va_*).
I can understand why you say we won't colonize Mars the way we don't colonize Antarctica, but going there? We've already had people travel through the vacuum of space exposed to cosmic rays to land on a barren rock and take off again. The latest estimates is that a Mars round trip will give you about 5% lifetime risk of dying from cancer, it's far from a deadly dose. We've had people living in zero-g for 437 days straight, we have people isolated in Antarctica for several months of solid darkness and cold. There's really nothing to indicate Mars is so inhospitable that we can't go, if we want to. It might not make sense to go because of the billions we'll need without much tangible returns but in practice we probably could.
Still, I have to point out that this amount of research could have been done by a motorized human in half a day. For a rough estimate, look at the path the rover traveled in these 4000 days:
And the entire project with two rovers and five extensions has cost $944 million. The SLS program will cost tens of billions to develop and even then a launch would eat over half the budget, before you actually have any crew capsule, lander, habitat, return craft or scientific equipment. If you really did an apples-to-apples comparison on the same budget, you'd realize we're getting a very good bang for the buck.
Next time you see your great-granddad, ask him what he thinks about interracial marriages.
(That is basically the level of your argument, in case this isn't readily obvious.)
It isn't like any polynesians had a navy capable of transporting the people and resources needed to conquer the islands. Nor was there economic value in such an endeavor. Refugees and explorers showing up and assimilating? Absolutely. A conquering force? Not a chance.
Maori didn't quite conquer New Zealand that way (there was no-one to conquer it from), but they definitely did assemble a fleet large enough to be an invasion force.
The royal family of the Hawaiians may not even call themself so, it is illegal under the american constitution.
Care to cite the relevant part?