C ist die Grundlage für C++. Während C++ häufiger für Desktop-Apps und Spiele verwendet wird, ist es eine ausgezeichnete Option, um mit C zu beginnen, insbesondere wenn Sie neu in der Softwarewelt sind. Lesen Sie weiter, um zu erfahren, warum.
What is C?
C ist eine höhere strukturelle Programmiersprache. In C geschriebene Programme sind portabel. C ist auch heute noch eine der Top-Programmiersprachen, weil es robust ist. Es wird für komplexe Programme wie eingebettete Systeme, Treiber, Kernel, Systemanwendungen, Betriebssysteme wie Microsoft Windows, Apple OS X, Datenbanken wie verwendet MySQLund einige IoT-Anwendungen.
C ist eine kompilierte Sprache und stellt somit eine Abstraktionsebene zwischen dem Maschinencode und dem Programm bereit.
Ein einfaches C-Programm zum Addieren zweier Zahlen sieht so aus.
#include<stdio.h>
int main()
{
int a, b, sum;
printf("Enter two numbers to add: ");
scanf("%d%d", &a, &b);
sum = a + b;
printf("\nSum of %d and %d is %d", a, b, sum);
return 0;
}
Hier ist die Ausgabe:

C-Programme umfassen stdio.h – die standard input oAusgang.
STDIO bietet grundlegende Eingabe-Ausgabe-Funktionen wie printf und scanf. printf wird verwendet, um etwas (Nachricht, Ausgabe) auf der Konsole auszugeben, während scanf wird verwendet, um Eingaben von der Konsole entgegenzunehmen. Wir verwenden %d, um anzuzeigen, dass die Zahlen ganze Zahlen sind.
Wenn Sie Dezimalzahlen angeben, erhalten Sie einige seltsame Antworten. Um dies zu vermeiden, können Sie %f verwenden. Das main()
Funktion ist die erste Funktion, die ausgeführt wird, wenn das Programm ausgeführt wird. Die Syntax ist sehr einfach – deklarieren Sie die Variablentypen und verwenden Sie sie dann.
What is C++?
C++ basiert auf objektorientierten Programmierprinzipien wie Abstraktion, Polymorphismus, Vererbung und Kapselung. Sie können sich C++ als eine Erweiterung von C mit dem Konzept von Klassen und Objekten vorstellen.
Das Vorhandensein von Objekten zum Speichern von Daten gab den Programmen eine ordentliche Struktur. Wenn Sie beispielsweise Details eines Schülers speichern möchten, können Sie eine Schülerklasse erstellen und Attribute wie Name, Alter, Hobbys, Noten usw. unter der Klasse erstellen. Sie können jederzeit ein echtes Studentenobjekt erstellen!
class Student {
public:
char name[20];
int age;
float marks;
};
//This will create an object
Student student1 = new Student();
In Wirklichkeit wird das Objekt nur während der Laufzeit erstellt und Speicher zugewiesen.
C++ bietet hohe Leistung, weshalb es auch heute noch die beliebteste Wahl für die Entwicklung von Hochleistungs-Game-Engines, eingebetteten Systemen, Browsern, Compilern und grafikbasierten Anwendungen wie z Bildverarbeitung.
Nur wenige Datenbanken wie MongoDB sind in C++ geschrieben. Genau wie C ist C++ portabel.
Lassen Sie uns unser vorheriges Additionsprogramm in C++ schreiben – beachten Sie die verschiedenen Funktionen.
#include <iostream>
using namespace std;
int main() {
int a, b;
cout << "Enter the numbers: ";
cin >> a >> b;
int sum = a + b;
cout << a << " + " << b << " = " << sum;
return 0;
}
Beachten Sie, dass wir verwenden Cout und cin statt printf und scanf. Außerdem können Typdeklarationen an beliebiger Stelle im Programm vorgenommen werden, bevor die Variable verwendet wird (z. B. die Variablensumme). Die Druckanweisung ist ganz einfach, da sie nur die Variablennamen enthält. Beachten Sie, dass wir den Namespace std aus der verwenden iostream-Header. std hat die Methoden wie cout, in, und viele mehr.
Similarities between C and C++
Man kann sagen, dass C eine Teilmenge von C++ ist. Es gibt viele Ähnlichkeiten zwischen C und C++, sei es in der Art und Weise, wie Programme geschrieben werden, oder in den Anwendungen, für die sie verwendet werden. Beide sind robust, tragbar und hochleistungsfähig. Einige wichtige Gemeinsamkeiten sind:
Snr. | Serienmäßige Funktionen | Erläuterung |
1. | Syntax | Beide haben die gleiche Syntax, z. B. Variablendeklaration, Zeilenende-Semikolon, Namenskonventionen usw. |
2. | Strukturell und verfahrenstechnisch | Jede Codezeile wird einzeln ausgeführt. Die Programme sind wie folgt aufgebaut – zuerst die Importe, dann Variablendeklarationen und dann der Hauptcode. |
3. | Hauptfunktion | Der gesamte Code, der ausgeführt werden muss, sollte sich in der Funktion main() befinden. main() ist der erste Funktionsaufruf während der Programmausführung. |
4. | Pointers | Sowohl C als auch C++ verwenden Zeiger auf die gleiche Weise. Ein Zeiger ist eine Variable, die die Speicheradresse einer anderen Variablen speichert. Beispiel: int a = 1;. Sobald dieser Code ausgeführt wird, wird ein Speicher (z. B. XX0011) für a zugewiesen. Auf den Speicherplatz von 'a' kann zugegriffen werden, indem das kaufmännische Und (&) als int ptr_a = &a; |
5. | Schlüsselwörter und Operatoren | Alle in C vorhandenen Schlüsselwörter und Operatoren gelten auch für C++. Zum Beispiel scope, static, public, int usw. C++ hat auch zusätzliche Operatoren und Schlüsselwörter. |
Differences between C and C++
C++ wurde entwickelt, um einige der Mängel von C zu überwinden, und ist eine Obermenge von C. Daher funktioniert jedes in C geschriebene Programm in C++ – aber nicht umgekehrt! Der Hauptunterschied zwischen C und C++ besteht darin, dass C++ auf objektorientierten Prinzipien (OOP) der Programmierung basiert. Außerdem wird in C++ mehr Wert auf die Typprüfung gelegt. Es gibt auch ein paar subtilere Unterschiede, die unten aufgeführt sind:
C | C + + |
Wurde zwischen 1969 und 1973 von Dennis Ritchie in den Labors von AT&T Bell entwickelt | 1979 von Bjarne Stroustrup entwickelt. |
Folgt nicht den Prinzipien der objektorientierten Programmierung | Basierend auf den OOPS-Konzepten wie Kapselung, Polymorphismus und Vererbung |
C enthält insgesamt 32 Schlüsselwörter wie char, switch, int, static, union und andere | Alle C-Schlüsselwörter sind in C++ gültig, und 31 zusätzliche Schlüsselwörter sind ebenfalls vorhanden. |
Unterstützt nur prozedurale Programmierung | C++ unterstützt mehrere Programmierparadigmen, wie OOP, generische und funktionale Programmierung |
Wir können keine Funktionen von OOP in C implementieren. | Features wie Freunde, virtuelle Funktionen in C++ verbessern die Essenz von OOP. |
C unterstützt eingebaute Datentypen. | C++ unterstützt sowohl integrierte als auch benutzerdefinierte Datentypen durch das Konzept von Klassen |
Das Überladen von Operatoren oder Funktionen ist vorgesehen | C++ unterstützt sowohl Operator- als auch Funktionsüberladung (Polymorphismus) |
Die Speicherzuweisung erfolgt über die Funktionen malloc () und calloc () und die Freigabe mit free () | Die Speicherzuweisung erfolgt mit Operator und Freigabe mit löschen Operator |
C unterstützt keine Ausnahmebehandlung | Unterstützt Ausnahmebehandlung |
Konzentriert sich mehr auf das Verfahren oder die Methode als auf Daten | Mehr Fokus auf Daten |
Einige andere wichtige Funktionen, die nur in C++ vorhanden sind, sind:
- Die Namensraum Schlüsselwort können wir Variablen mit demselben Namen in verschiedenen Namespaces erstellen.
- Wir können Funktionen innerhalb einer Struktur verwenden. Strukturen können auch Zugriffsmodifikatoren haben.
- Unterstützt Referenzvariablen.
When to use C or C++
Dies ist eine sehr häufige Debatte unter Programmierern – warum sollte ich C lernen, wenn ich alles in C++ machen kann?
Das Erlernen von C gibt Ihnen eine solide Grundlage für Datenstrukturen, Zeiger, Schlüsselwörter, Konzepte von Stack, Heap und Speicherzuweisung.
Abgesehen davon wird C immer noch häufig für Hochleistungs-Apps verwendet, da der C-Compiler schneller ist als der C++-Compiler. Wenn Sie also Codeblöcke schreiben möchten, die keine Objekte und Klassen, virtuellen Funktionen oder Vorlagen benötigen, entscheiden Sie sich für C, da C++ mit seinen umfangreichen Bibliotheken möglicherweise übertrieben ist.
Die meisten Low-Level-Codes wie Kernel, Betriebssysteme und Datenbanken werden immer noch in C verwaltet, sodass C-Kenntnisse Ihnen auch helfen werden, C++ schneller zu lernen.
C++ gilt als eine der schnellsten und effizientesten Sprachen – weshalb es immer noch eine der Top-Programmiersprachen ist, insbesondere für Hochleistungsanwendungen wie Spiele-Engines, IoT-Geräteund Desktop-Apps. Viele Anwendungen verwenden eine Kombination aus C- und C++-Code – um eine optimale Leistung zu erzielen und die Vorteile der objektorientierten Programmierung zu nutzen.
Zusammenfassung
In diesem Artikel haben wir die Grundlagen von C und C++ anhand eines einfachen Beispielprogramms gelernt. Wir haben die Hauptunterschiede und Ähnlichkeiten zwischen beiden Sprachen besprochen und wann sie verwendet werden sollten.
Wenn Sie Ihre Softwareentwicklungsreise gerade erst beginnen, wird Ihnen der Einstieg in C einen Vertrauensschub geben, da es einfach ist und alle Programmierkonzepte wie Datenstrukturen, Zeiger, Speicher usw. abdeckt.
Sie könnten daran interessiert sein, Geekflare online zu nutzen C-Compiler und C ++ - Compiler.