Lernen in C

Lernen in C
Eine Zeichenfolge ist ein wichtiges Konzept in der C -Sprache. Eine Zeichenfolge ist nichts anderes als ein Array, das nur den Wert des Zeichenstyps enthält. Wir können also indirekt sagen, dass String ein Zeichenarray ist. Eine Abfolge von Zeichen, die am Null -Charakter gekündigt wurden.

ASCII -Code des Nullzeichen ist 0.

Programmierbeispiel 1

In dieser Programmierung werden wir versuchen zu erfahren, wie eine Zeichenfolge deklariert und initialisiert wird, und drucken Sie dann alle Zeichen dieser bestimmten Zeichenfolge aus.

#enthalten
int main ()

// Deklaration und Initialisierung der Zeichenfolge.
char s [10] = 's', 'a', 'u', 'r', 'a', 'b', 'H', '\ 0';
für (inti = 0; i<= 7 ; i++ )

printf (" %c", s [i]); // Drucken Sie die Zeichenfolge

printf ("\ n");
Rückkehr 0;

Ausgang

Notiz

Wenn wir die Zeichenfolge initialisieren möchten, können wir jeden Buchstaben eines Wortes schreiben, womit IS '&' getrennt von und mit einem speziellen Zeichen '\ 0' enden können.

Erläuterung

Hier möchten wir den Nullcharakter drucken, aber wir können das Nullcharakter nicht drucken.

Wenn wir dem Benutzer einen Wert oder eine Zeichenfolge nehmen möchten, wissen wir nicht, wie oft die Schleife ausgeführt wird, aber wenn die Schleife sieht, dass '\ 0' gekommen ist, wird es verstehen, dass dies das Ende von ist die Saite.

für (i = 0; s [i]!= '\ 0'; i ++) // Verwendung des NULL -Charakters
printf ("%c", s [i]);

Wenn wir nicht jeden Zeichen einer Zeichenfolge mithilfe von Sloop drucken möchten und die Gesamtzeichenfolge drucken möchten, dann möchten-

printf (" %s", s); // anstelle von Loop, um die Zeichenfolge zu drucken

Eine andere Funktion kann verwendet werden, um die Zeichenfolge zu drucken.

stellt (s); // [Es ist kein Formatspezifizierer erforderlich]
[Puts () Funktion automatisch ändern die Linie]
Puts (& s [0]);

Ausgang

Saurabh

Ein anderes Format der String -Initialisierung

char s [10] = "saurabh"

Wenn wir die Zeichenfolge zum Zeitpunkt der Deklaration nicht initialisieren möchten, möchten Sie eine Zeichenfolge vom Benutzer abnehmen, dann -

printf („Name eingeben“);

1. scanf (" %s", s); // Hier muss nicht verwendet werden und unterschreiben .

2. scanf (" %s", %s [0]); // Die Bedeutung von zwei Zeilen ist gleich

scanf () hat nur einen Nachteil. Wenn wir einen Namen wie Avishek Dutta drucken möchten, druckt er nur Avishek aus. Weil scanf () wie ein Trennmaschinen -Trennzeichen ist. Wenn wir es verwenden, versteht es, dass Informationen oder Zeichenfolge fertiggestellt sind. Es hat eine andere Form -

bekommt (s); - Es wird vom Benutzer wie Scanf () eine Zeichenfolge entnommen.

Aber es druckt die gesamte Zeichenfolge - Avishek Dutta.

Programmierbeispiel 2

In diesem Programmierbeispiel lehrt und initialisieren wir eine Zeichenfolge mit Hilfe der malloc () -Funktion.

#enthalten
#enthalten
#enthalten
int main ()

char *a;
int b;
printf ("Wie viele Zeichen in der Zeichenfolge ? ");
scanf ("%d", & b);
a = (char *) malloc (b * sizeof (char)); // Erstellen des Stringblocks
printf ("die Zeichenfolge einfügen:");
scanf ("%s", a);
printf ("eingegebene Zeichenfolge: %s \ n", a);
befreie ein ) ;
Rückkehr 0;

Ausgang

Erläuterung

Hier möchten wir eine Zeichenfolge vom Benutzer eingeben. Die Zeichenfolge wird mit Hilfe der dynamischen Speicherzuweisung erstellt. malloc () Erstellen Sie die Zeichenfolge und gibt die Adresse der Zeichenfolge an die Variable A zurück. Jetzt drucken wir einfach die Zeichenfolge aus.

Zeichenfolge bezogen

Strlen ()

Übergeben der Adresse der Zeichenfolge und es gibt die Länge der Zeichenfolge zurück. Nur ein Argument bestehen.

Strrev ()

Die Zeichenfolge umkehren. Es dauert nur ein Argument, das die Adresse der Zeichenfolge ist und die umgekehrte Zeichenfolge zurückgibt.

strlwr ()

Es ändert den oberen Fallbrief in das untere Fallschreiben.

Strupr ()

Es ändert den unteren Fallschreiben an den oberen Fallschreiben.

Strcpy ()

Um die Zeichenfolge zu kopieren

Strcpy (S „Habibpur“)

STRCMP ()

Wir können unten tun, um die Zeichenfolge zu vergleichen.

STRCMP („Amar“, „Amit“)

Es gibt einen ganzzahligen Wert zurück, der eine entsprechende Nichtübereinstimmung des ASCII -Zeichens ist.

Strcat ()

Die beiden Saiten anhängen,

Strcat (S, „Student“); s [] = "Hallo"

Also ist es als "Hallo Schüler" verbunden.

Umgang mit mehreren String:

char s [3] [10] = "bhopal", "delhi", "kanpur";

[3] bedeutet, wie viele Zeichenfolge wir in diese 2D -Zeichenfolge einfügen können.

Programmierbeispiel 3

In dieser Programmierung lernen wir, wie die zweidimensionale Zeichenfolge deklariert und initialisiert wird und ihre Anwendung.

#enthalten
int main ()

char s [3] [10];
printf ("drei Zeichenfolgen eingeben");
für (inti = 0; i<= 2 ; i++ )

bekommt (& s [i] [0]);

für (inti = 0; i<= 2 ; i++ )

printf (" %s \ n", s [i]);

Rückkehr 0;

Ausgang

Erläuterung

Wie ein Array können wir eine zweidimensionale Zeichenfolge in der C-Sprache deklarieren und initialisieren. Hier deklarieren wir eine 2D -Zeichenfolge mit dem Namen S [3] [10]. Innerhalb der Klammern 3 und 10 bedeutet wir, dass diese bestimmte Zeichenfolge drei Zeilen hat und jede Zeile zehn Spalten enthält. In der Zeichenfolge weisen wir drei Städte Namen zu. Sie sind Bhopal, Delhi und Kanpur. Diese Werte werden vom Benutzer übernommen, indem die Funktion get () für die Schleife verwendet wird. Jetzt drucken wir einfach den Namen der Städte aus.

Abschluss

Aus der obigen Diskussion über String sind wir zur Entscheidung gekommen, dass String ein mächtiges Konzept in der C -Sprache ist. String gibt uns eine neue Dimension, um Zeichentypwerte zu speichern. Durch unterschiedliche Funktionen in der Zeichenfolge können wir verschiedene Arten von Charakterwerten bedienen, um zu verkettet, niedriger bis Kapital, Kapital zu niedriger, umgekehrt usw.