Ir para conteúdo
Fórum Script Brasil
  • 0

Manipular string


mtp

Pergunta

Pessoal,

Tenho uma certa dificuldade para manipular string em C/C++.

Gostaria fazer algumas perguntas.

Qual a maneira mais certa de se inicializar uma string quando não se sabe o tamanho que ela vai conter?

Quando se passa uma string por parâmetro (referência/ponteiro), é melhor incializá-la fora ou dentro da função?

Tenho uma séria dificuldade em entender o comando sizeof para os vários tipos (CHAR, WCHAR, DWORD, BYTE...). Às vezes declaro uma variável de algum desses tipos, ou ponteiros para esses tipos, e não obtenho o valor que estou pensando. Alguém pode me ajudar com alguns exemplos?

Última pergunta sobre C++, para manipulação de arquivos (escrita e leitura) é melhor usar utilizar as funções básicas (fopen, fgets...) ou as APIs do windows (CreateFileW, writefile...)?

Muito obrigado!

Abraços

Editado por Jonathan Queiroz
Título editado conforme regra 3.6 (Jonathan)
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Qual a maneira mais certa de se inicializar uma string quando não se sabe o tamanho que ela vai conter?

char *str;

use alocação dinâmica

Quando se passa uma string por parâmetro (referência/ponteiro), é melhor incializá-la fora ou dentro da função?

fora, pois o ponteiro já possuirá o valor de memória referente à posição zero do array

Tenho uma séria dificuldade em entender o comando sizeof para os vários tipos (CHAR, WCHAR, DWORD, BYTE...). Às vezes declaro uma variável de algum desses tipos, ou ponteiros para esses tipos, e não obtenho o valor que estou pensando. Alguém pode me ajudar com alguns exemplos?

sizeof() simplesmente retorna o tamanho, em bytes, que cada tipo de dado ocupa na memória.

Por exemplo, um inteiro ocupa 4 bytes. Logo, sizeof( int ) retornará 4.

Última pergunta sobre C++, para manipulação de arquivos (escrita e leitura) é melhor usar utilizar as funções básicas (fopen, fgets...) ou as APIs do windows (CreateFileW, writefile...)?

Aprenda a usar as funções do C. Depois pense em API's.

Link para o comentário
Compartilhar em outros sites

  • 0

no caso do sizeof, você pode passar como parâmetro tanto o tipo diretamente como uma variável daquele tipo. Porém o sizeof de um ponteiro irá retornar o tamanho que o ponteiro ocupa na memória (um int) e não o tamanho do dado que ele aponta, talvez isso que te confunda...

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...