*   >> Leitura Educação Artigos >> science >> programação

Cordas de núcleo em C ++

um seqüência de caracteres, preenchendo um array com os elementos e terminando com '\\ 0' não é conveniente para o programador. Então, os inventores do C ++ decidiu 1) substitua o bloco de matriz de char que termina com o caractere nulo com uma seqüência entre aspas duplas. 2) A cadeia de caracteres digitados em aspas retorna um ponteiro (endereço de memória) para o primeiro elemento da matriz substituído. 3) Este ponteiro é o ponteiro de cadeia e um contexto (por exemplo, cout Object) pode usá-lo para retornar uma string.

4) O ponteiro retornado a partir das aspas, pode ser usado na inicialização de um ponteiro char para criar uma cadeia de caracteres. O código a seguir ilustra estes: #include using namespace std; int main () {char * herStr = "a mulher"; cout retornar 0; } Leia e tentar o código acima, se você não tiver feito isso (você receberá uma mensagem de aviso, mas simplesmente ignorá-la por agora). Note-se que na inicialização de indicadores de outros tipos de objeto, o operando direito retorna o endereço (eg & myInt) de algum objeto. Uma coisa semelhante aconteceu aqui. Um endereço é um ponteiro.

Você pode dividir a inicialização em declaração e atribuição como no código a seguir (se você tentar o código, poderá receber uma mensagem de aviso - simplesmente ignorar isso por enquanto): #include using namespace std; int main () {char * herStr; herStr = "a mulher"; cout retornar 0; } Neste ponto, você pode estar se perguntando como usar o objeto cout predefinido e seus operandos associados; não se preocupe, vamos estudar o objeto cout mais tarde na série. String literal Uma seqüência de caracteres entre aspas duplas é chamado uma string literal.

Incrementar e diminuindo Cadeia Pointer Estritamente falando, não há nenhum ponteiro string. No entanto, se você inicializar (ou declarar e atribuir) uma string como nas situações acima, então você pode dizer que você tem um ponteiro de cadeia. Você pode aumentar ou diminuir o ponteiro (endereço no objeto ponteiro) para apontar para o caráter seguinte ou anterior (objeto) na cadeia, uma vez que a cadeia é armazenado como uma matriz (que termina com \\ 0) na memória.

Leia e tente o seguinte código, que ilustra este (você pode ver uma mensagem de aviso - simplesmente ignorar isso por enquanto): #include using namespace std; int main () {char * herStr = "a mulher"; cout ++ herStr; cout ++ herStr; cout retornar 0; } Para obter o valor (char) apontado pelo ponteiro de cadeia, o operador de remoção de referência (

Page   <<  [1] [2] [3] [4] [5] [6] >>
Copyright © 2008 - 2016 Leitura Educação Artigos,https://artigos.nmjjxx.com All rights reserved.