Programação  
 
Conhecimento computador >> Programação >> C /C + + programação >> 
Comprimento de Cordas Sem Construído na função em C + +
Normalmente, um programador pode recuperar o comprimento de uma frase (ou string) em qualquer programa C + + por chamados método da string " length () " . No entanto, como cordas implementadas em C + + não estavam sempre disponíveis , e os programadores não têm acesso a métodos prontos , como o comprimento (). Contando o comprimento de uma string sem usar esse construído em método envolve a cadeia entendimento , arrays de caracteres c -estilo, e como fazer uma iteração sobre eles. C + + e C Cordas Cordas

Em C + + , o " string" built-in tipo de dados representa sentenças , frases ou palavras. No entanto, o tipo de dados string , na verdade, representa o que os programadores chamam de cadeia " c- estilo " . No idioma original C , os programadores armazenados frases como coleções ( ou matrizes ) de caracteres. Assim, enquanto em C + +, uma declaração de variável frase parece:

string str = " Olá ";

em C, a mesma declaração se parece com:

de char str [50 ] = " Olá ";

Onde " str " representa uma matriz de 50 caracteres. Além disso, como cordas de estilo C são simplesmente matrizes , todos eles terminam com um caractere de terminação nulo ("\\ 0") que significa o fim da string.
O " c_str () " Método

a coisa interessante sobre strings em C + + é que eles são uma classe, e como uma classe conter métodos para fazer um trabalho na cadeia . Um desses métodos ( " c_str ()" ) retorna uma string estilo C que representa a seqüência de C + + . Isso significa que o valor de retorno vai acabar como um array de caracteres contendo os caracteres da string , incluindo o caractere de terminação nula .
Copiando o C Cadeia

para realmente fazer alguma coisa com a seqüência C- estilo recuperado de c_str (), o programador precisa colocá-lo em uma matriz de caracteres . Isto exige que o método " strcpy " , que irá copiar série um personagem para outro :

# include

# include

# include < ; iostream >

using namespace std;

string str = " A String ";

de char str2 [50] ;

strcpy ( str2 , str . c_str ())

Agora , a representação de string C- estilo de " str " vai copiar para a matriz de caracteres " str2 " (incluindo nulo caracteres).
Contando o personagens

Agora que o programador tem uma cópia conjunto da cadeia, incluindo o caractere nulo que irá informar o programador quando a corda acaba , torna-se uma questão de personagens simplesmente contando até que o programa atinge o nulo caráter :

int i = 0;

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

i + +

}

cout << i + 1;

a ", enquanto " verificações de loop cada personagem desde o início ( a posição do caractere 0 ) até atingir o caractere nulo . Em seguida , o programa imprime i +1 ( porque o índice começa em 0 , ea posição do caractere nulo não é contado ) que resulta em um valor de retorno de 8.

Anterior :

Próximo : No
  Os artigos relacionados
·String de conexão para o SQL Authentication 
·Como programar Cacau em um iPhone 
·Como calcular um Transpor Matriz em C + + 
·'C' Programação Android 
·Prós e contras de Objective C 
·Como converter strings para valores longos não assinad…
·Como compilar o código em um Mac 
·Um tutorial sobre Alertas iPhone SDK 
·Apue.H não encontrado no Ubuntu 
·Como gerar Aleatórias negativos e positivos inteiros e…
  Artigos em destaque
·Como usar OLE Com o Visual C 
·Como usar o LINQ to XML 
·C + + e verificação de erros de sintaxe 
·Como compilar código C + + Usando GNU 
·Como usar Ctags Com UltraStudio 
·Programas em C + + que irá reverter a sentença 
·A conversão de um valor negativo para positivo em C + …
·Como converter XML para Enum 
·Como usar LINQ em WPF 
·Como configurar Bytes para receber dados numéricos usa…
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados