History of C Language Features of C

4. Language Features of C

Section Owner: Gurneet Singh MVP Content Contributors: Amit Kukreja , Arvind Rangan , Reshmi Nair

4.1 History of C

.NET framework offers a myriad of languages which puts us programmers into a deep thought process about which programming language best suits our needs. Which language is the best language choice? If you are a VB wizard, should you take the time to learn C or continue to use VB.NET? Are C ASP.NET pages faster than VB .NET ASP.NET pages? These are questions that you may find yourself asking, especially when youre just starting to delve into .NET. Fortunately the answer is simple: there is no best language. All .NET languages use, at their root, functionality from the set of classes provided by the .NET Framework. Therefore, everything you can do in VB.NET you can do in C, and vice-a-versa. The differences occur in three main areas: syntax, object-oriented principles, and the Visual Studio .NET IDE. Syntax concerns the statements and language elements. Object Oriented differences are less obvious, and concern differences in implementation and feature sets between the two languages. IDE differences include things like compiler settings or attributes. There is also a fourth area of difference: language features that are present in one language but have no equivalent in the other. If you are more familiar with Java, JScript, or CC++, you may find Cs syntax more familiar than VB.NETs. A good question that has to be answered in order to keep you interested in learning C is Why should you learn another programming language when you already doing enterprise development in C++ or Java. The very answer at the first go will be C is intended to be the premier language for writing NGWS Next Generation of Windows Services applications in the enterprise computing world. The programming language C derives from C and C++; however apart from being entirely object oriented it is type safe and simple too. If you are a CC++ programmer your learning curve should be flat. Many C statements including expressions and operators have been taken directly taken from your favourite language An important point about C is that it simplifies and modernizes C++ in the areas of classes, namespaces and exception handling. Much of complex features have not been included or in fact hidden in C to make it easer to use and more importantly less error prone for e.g. no more macros, templates and no multiple inheritances Few of you might not like it. C provides you with convenient features like garbage collection, versioning and lot more. The only expense that I can think of is that your code operates in safe mode, where no pointers are allowed. However if you want to use pointers you are not restricted from using it via unsafe code- and no marshalling is involved when calling the unsafe code. So you will learn a great deal of this new language in the coming Sections and see for yourself that how C resembles or not resembles your favorite language

4.2 Language Fundamentals in C