| Hjem | Hardware | Netværk | Programmering | software | Fejlfinding | systemer | 
Programmering  
  • C /C + + Programming
  • Computer Programmeringssprog
  • Delphi programmering
  • Java programmering
  • JavaScript Programmering
  • PHP /MySQL programmering
  • Perl programmering
  • Python Programming
  • Ruby Programming
  • Visual Basics Programmering
  •  
    Computer Viden >> Programmering >> C /C + + Programming >> Content
    Længde String Uden Indbygget Funktion i C + +
    Normalt kan en programmør hente længden af ​​en sætning ( eller streng) i enhver C + +-programmet kaldelser strengen er " længde ( ) "-metoden. Men strenge som implementeret i C + + var ikke altid til rådighed , og programmører ikke har haft adgang til færdige metoder såsom længde (). Optælling længden af ​​en streng uden at bruge denne indbyggede metode indebærer forståelse streng, c- stil tegndatatabeller , og hvordan du gentage over dem. C + + Strings og C Strings

    C + +, den indbyggede datatype "streng " repræsenterer sætninger , sætninger eller ord. Men strengen datatype faktisk repræsenterer, hvad programmører kalder en " c- style" streng. I den oprindelige C-sprog , opbevares programmører sætninger som samlinger ( eller arrays ) af tegn . Så mens der i C + +, en sætning variabelerklæring ligner : Hej

    string str = "Hello" ,

    i C, samme erklæring ligner : Hej

    char str [50 ] = "Hello" ,

    Hvor " str " repræsenterer en vifte af 50 tegn. Da C -stil strenge er simpelthen arrays , de alle ender med en Null -tegn ( "\\ 0") , der betyder enden af strengen.
    " C_str () " Method < br >

    interessante ting om strenge i C + + er, at de er en klasse , og som en klasse indeholder metoder til at gøre arbejdet på strengen . En af disse metoder ( " c_str ( ) ") returnerer en C- stil streng der repræsenterer C + + streng . Det betyder, at den returnerede værdi vil ende som et tegn array, der indeholder de tegn i strengen , herunder null opsigelse tegn.
    Kopiering af C String

    for rent faktisk at gøre noget med C- style string hentet fra c_str () , programmøren har brug for at sætte det ind i en karakter array. Dette kræver " strcpy "-metoden , hvilket vil kopiere et tegn array til en anden : Hej

    # include

    # include

    # include < ; iostream >

    using namespace std ;

    string str = " A String "

    char str2 [50 ]

    strcpy ( str2 , str. . c_str () )

    nu vil C -style string repræsentation af " str " kopiere, i karakter array " str2 " ( herunder null - tegn ) .
    tælle tegn

    at programmøren har en matrix kopi af strengen , herunder nul-karakteren , der vil informere programmøren når streng ender , bliver det et spørgsmål om blot at tælle tegn, indtil programmet rammer null karakter : Hej

    int i = 0;

    while (! str2 [i] = "\\ 0" ) {

    i + + Online

    }

    cout << i + 1 ,

    ", mens " loop kontrollerer hver karakter fra begyndelsen ( den 0. tegnposition ), indtil nå null-tegn . Derefter udskriver programmet i +1 ( fordi indekset starter på 0, og null-tegn position ikke talt med) , hvilket resulterer i en returværdi på 8 .

    Forrige :

    næste :
      Relaterede artikler
    ·Hvordan man laver en streng i et array af Chars i C + +…
    ·Sådan Fix Visual C Assertion Manglende 
    ·Debugging i Visual C 
    ·Sådan bruges Page Kontrol på iPhone SDK 
    ·Sådan får Elementer i en Matrix i C 
    ·Sådan Edit DataGrid Cell i Silverlight 
    ·Sådan fjernes et indeks i en dynamisk Array af heltal …
    ·Sådan Læs Data i Xcode 
    ·Sådan oprettes tekst for Direct3D C + + 
    ·Sådan Konverter LPSTR til INT 
      Anbefalede Artikler
    ·Sådan Læs MDB til ODBC 
    ·Sådan bruges Quick Sort Funktion i C + + i Array af he…
    ·Sådan Embed en link i AS2 
    ·Hvad er en Token i Java 
    ·Hvad er en Double Bogstavelig 
    ·Sådan Double Quote i PHP 
    ·Sådan Vis den første del af stykket i PHP 
    ·Sådan Fix Microsoft Visual C Debug Library 
    ·Sådan ændres en formular Action i Javascript 
    ·Forskel mellem Vector & List i C + + 
    Copyright © Computer Viden http://www.computerdk.com