Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

C - Snaren

Strings zijn in feite een eendimensionale reeks tekens die worden afgesloten met een null teken '\0'. Een null-terminated string bevat dus de tekens waaruit de string bestaat, gevolgd door een null .

De volgende declaratie en initialisatie creëren een string die bestaat uit het woord "Hallo". Om het null-teken aan het einde van de array vast te houden, is de grootte van de tekenarray die de tekenreeks bevat één meer dan het aantal tekens in het woord 'Hallo'.

char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};

Als u de regel van array-initialisatie volgt, kunt u de bovenstaande verklaring als volgt schrijven −

char greeting[] = "Hello";

Hieronder volgt de geheugenpresentatie van de hierboven gedefinieerde string in C/C++ −

Eigenlijk plaatst u de null . niet teken aan het einde van een stringconstante. De C-compiler plaatst automatisch de '\0' aan het einde van de tekenreeks wanneer de array wordt geïnitialiseerd. Laten we proberen de bovengenoemde string af te drukken −

Live demo
#include <stdio.h>

int main () {

   char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};
   printf("Greeting message: %s\n", greeting );
   return 0;
}

Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −

Greeting message: Hello

C ondersteunt een breed scala aan functies die op nul eindigende tekenreeksen manipuleren −

Zr.nr. Functie en doel
1

strcpy(s1, s2);

Kopieert string s2 naar string s1.

2

strcat(s1, s2);

Voegt string s2 samen met het einde van string s1.

3

strlen(s1);

Retourneert de lengte van tekenreeks s1.

4

strcmp(s1, s2);

Retourneert 0 als s1 en s2 hetzelfde zijn; kleiner dan 0 als s1s2.

5

strchr(s1, ch);

Geeft een pointer terug naar het eerste voorkomen van karakter ch in string s1.

6

strstr(s1, s2);

Retourneert een aanwijzer naar het eerste voorkomen van tekenreeks s2 in tekenreeks s1.

In het volgende voorbeeld worden enkele van de bovengenoemde functies gebruikt −

Live demo
#include <stdio.h>
#include <string.h>

int main () {

   char str1[12] = "Hello";
   char str2[12] = "World";
   char str3[12];
   int  len ;

   /* copy str1 into str3 */
   strcpy(str3, str1);
   printf("strcpy( str3, str1) :  %s\n", str3 );

   /* concatenates str1 and str2 */
   strcat( str1, str2);
   printf("strcat( str1, str2):   %s\n", str1 );

   /* total lenghth of str1 after concatenation */
   len = strlen(str1);
   printf("strlen(str1) :  %d\n", len );

   return 0;
}

Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −

strcpy( str3, str1) :  Hello
strcat( str1, str2):   HelloWorld
strlen(str1) :  10

C Taal

  1. C#-tekenreeks
  2. Java-strings
  3. Java enum Strings
  4. Een lijst met strings maken in VHDL
  5. C++ Strings:strcpy(), strcat(), strlen(), strcmp() VOORBEELDEN
  6. Strings in C:variabele declareren, initialiseren, afdrukken, voorbeeld
  7. Java String charAt() Methode met Voorbeeld
  8. Java String endsWith() Methode met voorbeeld
  9. Python-strings:vervangen, samenvoegen, splitsen, omkeren, hoofdletters en kleine letters
  10. Python String count() met VOORBEELDEN
  11. Java - Strings-klasse