>>57
Look. In perl, you can do this:
$x = 5;
$x = "string";
In C, you can't. You have to explicitly type-cast or you get a compiler error. In C++, the same is true for POD types and even classes, generally. You can always circumvent the type system by casting, taking address-of, etc... but that does not mean that the language is not strongly typed.
That's all there is to it. It's "poorly defined" because there are many conflicting definitions for it. But by the most commonly accepted definition -- which, from the beginning of this discussion, has been equivalent to "statically typed" -- C is absolutely, positively, "strongly typed."
You are confusing this extremely simple statement of a fact with "defending" a language which is misleading. It's convenient to just assume that everyone who disagrees with you does so because they're in love with a particular language, but it seems like the reverse is true... You want C or C++ to be weakly typed just because you hate it. Being weakly typed isn't even necessarily a bad thing. You calling C++ weakly typed wouldn't be an insult to the language even if it were true.