Concepts about C and C ++

Source: Internet
Author: User

The following describes some concepts related to C and C ++, which may be helpful for beginners.
Birth:
C language was born in 1973 and developed on the basis of B Language.
The C ++ language was born in 1983 and developed on the basis of the C language.
Both of them are developed by Bell Labs.
Standard C:
Ansic is the standard C. In 1983, the American National Standardization Association (ANSI) developed and expanded C in various versions since the advent of the C language, later, it was accepted by the international community and became a de facto C language standard. (American National Standardization Association (ANSI) is a more authoritative standard maker in the world and has developed many IT technology standards .)
What we need to clarify is that ansic is the standard definition of C language syntax, semantics, and functions. It specifies what the C language can do, and how to write the C language is the standard. It is not a compiler. Basically all compilers support ansic.
Compiler:
First of all, it should be clear that both C and C ++ languages belong to the compiling language, that is, they can only be run after compilation, rather than throwing the source code on the machine.
The well-known C and C ++ compilers include CC, GCC, G ++, Turbo C, Borlandc C ++, and VC ++.
CC is a built-in UNIX compiler and an official UNIX compiler. CC is commercial software, rather than downloading it. In Linux, CC is the symbolic link of GCC. It is just a point. The actual compiler is GCC, and can also point to other. Generally, it is rarely used.
GCC is a program language compiler developed by GNU. It is a set of free software and a standard compiler for free UNIX and Mac operating systems. GCC (especially the C language compiler) is widely used and is a de facto standard for cross-platform compilers.
Both g ++ and GCC belong to the GNU Compiler, and g ++ provides better support for C ++ programs. GCC is currently the best compiler for ascii c and G ++ for iso c ++.
Of course, GCC also supports C ++. Their differences are as follows:
1: Suffix. c, GCC treats it as a C program, while G ++ treats it as a C ++ program; suffix. CPP, both of which are considered as C ++ programs. Note that although C ++ is a superset of C, their syntax requirements are different. C ++ syntax rules are more rigorous.
2: In the compilation phase, G ++ calls GCC. For C ++ code, the two are equivalent, but because GCC commands cannot be automatically connected to the library used by the C ++ program, therefore, G ++ is usually used to complete the link. For convenience and unification, G ++ is usually used to compile and link.
Turbo C is Borland's C compiler (Borland has a series of Turbo products, such as Turbo BASIC, Turbo Pascal, And Turbo Prolog). It was born in 1987. Later, it integrated the object-oriented idea into Turbo C ++. In 1991, Turbo C ++ was replaced by Borland C ++ to become Borland's new product. Therefore, Turbo C, Turbo C ++, and Borland C ++ are the same products of Borland in different periods.
VC ++ doesn't need to be said, so we are no longer familiar with it. It is Microsoft's c ++ compiler.
These four compilers fully support the definition of the standard C/C ++, that is, ansic, but each compiler is expanded on the Standard C/C ++, added your own C/C ++ library. For example, in addition to ansi c, Turbo C also adds plotting functions. Generally, their own extension libraries are only supported by themselves, but are not supported by other compilers. For example, Tc (Turbo C) plot functions are only supported by TC. Similarly, ms vc ++ under the huge MFC Library only VC ++ support, TC does not support, GCC does not support.
GCC is a very large compiler that supports not only C/C ++, but also Fortran, Pascal, objective-C, Java, Ada and other languages. But it is the best in C/C ++.
IDE:
The well-known Integrated C/C ++ development environment software includes Turbo C, Borland C ++, VC ++, and Dev C ++.
Turbo C is Borland's early integrated C program development environment. Of course, it integrates its own Turbo C compiler and TC library;
Borland C ++ is the later stage of Borland's C/C ++ integrated development environment, which integrates its own Turbo C compiler and TC library;
VC ++ is an integrated development environment for C/C ++ programs of Microsoft. It integrates its own VC ++ compiler and MFC library;
Dev C ++ is a free software and a good integrated development environment for C/C ++ programs. It is the best development tool that supports C/C ++ standards, it uses the GCC, G ++ compiler, and does not support third-party libraries.
Summary:
Speaking of the best, it seems a bit vague. I will clarify these concepts again:
Ansic: defined as standard C. It is developed by the American National Standardization Association. Currently, most compilers and ides support ansic, at least.
Turbo C/C ++: A compiler and IDE. Is a Borland product.
Borland C ++: A compiler and IDE. Is a Borland product.
VC/VC ++: Both compiler and IDE. Is a product of Microsoft.
GCC: gnu c/C ++ Compiler
G ++: gnu c/C ++ Compiler
Dev C ++: Pure IDE, using gcc, G ++ compiler. Only Standard C/C ++ is supported.From: blog.csdn.net/acossoft


Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.