Someone can exaplain me why use C instead C++? Until now i've never
found exaplanation for this.
Apart from a few minor details, C++ is designed for object-oriented designs.
So the question really becomes, why use procedural rather than OO
techniques?
Every project written in C on which i've worked could be written in
c++, and when in nowadays happen still to see C code I really don't
understand why the same things cannot be written in c++.
Languages are equivalent. I'm currently implementing an OO adventure in
stright C, which is more trouble than its worth (wish i could use Java but I
can't)
Using c++ it's possble to reduce developing time achieving the same result.
That's just Bjarne Strousup's propaganda. In certain carefully-chosen cases
he is of course correct. However generally an object-oriented design takes a
lot longer to implement than a procedural one, because you have two
dependency hierarchies (the object inheritance hierarchy and the object call
hierarchy) rather than one (the function call tree), so it is much more
difficult to produce an elegant design. However OO really comes into its own
when you want a third party programmer to extend your functions without
recompiling or modifying your code.
Can you give me a valid reason for C?
The British army recently bought an assault rifle from a Swedish company,
and asked for the automatic fire option to be taken out. You might ask, what
is the point of that, since a gun which can fire bursts or single shots can
do everything that a single-shot gun can do, and more? The reason was that,
in the heat of battle, it was thought that soldiers would fire wildly and
waste ammunition. This consideration outweighed the cases when firing a
sustained burst would be beneficial.
It is the same with C++. From experience, programmers will forever play with
the language if allowed to program in C++. They try out templates, and
multiple inheritance, and experiment a bit with virtual functions or
operator overloading to see how they work. In C they just get the job done.