Ir para conteúdo
Fórum Script Brasil

Pesquisar na Comunidade

Mostrando resultados para as tags ''if; vetor; string; c;''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • Programação & Desenvolvimento
    • ASP
    • PHP
    • .NET
    • Java
    • C, C++
    • Delphi, Kylix
    • Lógica de Programação
    • Mobile
    • Visual Basic
    • Outras Linguagens de Programação
  • WEB
    • HTML, XHTML, CSS
    • Ajax, JavaScript, XML, DOM
    • Editores
  • Arte & Design
    • Corel Draw
    • Fireworks
    • Flash & ActionScript
    • Photoshop
    • Outros Programas de Arte e Design
  • Sistemas Operacionais
    • Microsoft Windows
    • GNU/Linux
    • Outros Sistemas Operacionais
  • Softwares, Hardwares e Redes
    • Microsoft Office
    • Softwares Livres
    • Outros Softwares
    • Hardware
    • Redes
  • Banco de Dados
    • Access
    • MySQL
    • PostgreSQL
    • SQL Server
    • Demais Bancos
  • Segurança e Malwares
    • Segurança
    • Remoção De Malwares
  • Empregos
    • Vagas Efetivas
    • Vagas para Estágios
    • Oportunidades para Freelances
  • Negócios & Oportunidades
    • Classificados & Serviços
    • Eventos
  • Geral
    • Avaliações de Trabalhos
    • Links
    • Outros Assuntos
    • Entretenimento
  • Script Brasil
    • Novidades e Anúncios Script Brasil
    • Mercado Livre / Mercado Sócios
    • Sugestões e Críticas
    • Apresentações

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Encontrado 1 registro

  1. Prezados, Por favor, estou tendo dificuldades em conseguir comparar o conteúdo de um vetor com uma string (sei que não há string em C, e sim um vetor de char, mas usei este termo apenas para me explicar melhor). Ocorre o seguinte: O programa contém as seguintes variáveis globais (vetores de char): char Buffer[15] = ">ID01RL1#ON*"; char ID[5]=">ID01"; char CMD[10]; Em um segundo momento, o conteúdo da variável Buffer será atribuído a partir de uma informação que será recebido pela porta serial, mas por hora, estou simulando com um conteúdo fixo. Criei uma rotina chamada Check_ID() que pega os 5 primeiros dígitos do Buffer e compara com a variável ID, se for igual, então o sistema deve prosseguir. Esta rotina será utilizada para identificar se a informação que chegar pela Serial (Buffer) está endereçada para ele. Criei uma segunda rotina chamada Check_CMD() que pega a partir da 6ª posição do Buffer e vai até o final deste e salva este conteúdo no vetor CMD. Então no Programa Principal, exatamente na linha 66, eu faço um IF para comparar o conteúdo de CMD com uma informação que deve estar entre aspas duplas, por exemplo: if (CMD == "RL1#ON*"). Neste ponto é que estou tendo dificuldades... Se eu fizer o seguinte teste: printf("CMD..: %s, CMD); O programa imprime exatamente o conteúdo que está sendo informado entre as aspas no IF, porém, o if me retorna FALSE. A pergunta é: Como devo fazer esta validação? (Visto que CMD é um vetor de char). Abaixo está TODO o código para que possam entender melhor o que foi dito acima. Desde já agradeço a todos que puderem me ajudar. Obs.: Estou testando o código no TurboC. #include <stdio.h> #include <stdlib.h> #include <string.h> #include <conio.h> //Variáveis Globais char Buffer[15] = ">ID01RL1#ON*"; char ID[5]=">ID01"; char CMD[10]; /******************** ** Check_ID() ** Pega os 5 primeiros dígitos da String para verificar se ‚ o ID correto ** Recebe Buffer como parâmetro ** Retorna 0 para ID Incorreto; 1 para ID Correto **/ int Check_ID(char bfr[15]) { char ID_tmp[5]; int status=0; //Coleta ID (5 primeiros caracteres do Vetor bfr e salva em ID_tmp) strncpy(ID_tmp, bfr, 5); ID_tmp[5] = '\0'; //Adiciona caracter delimitador //Valida vetor (cada posicao) for(int i=0; i<5; i++) { if(ID_tmp[i] == ID[i]) status = 1; else status = 0; } //Retorna 1 para ID Correto, 0 para ID Incorreto return status; } /******************** ** Check_CMD() ** Pega os ultimos dígitos da String a partir do 6º para verificar o comando **/ void Check_CMD(char bfr[15]) { //Coleta Comando (Os Últimos caracteres da String) for(int i=5; i <15; i++) { CMD[i-5] = bfr[i]; } } //Programa Principal void main(){ clrscr(); //Verifica ID if (Check_ID(Buffer) == 1) { printf("ID Correto"); //Coleta Comando da String Check_CMD(Buffer); //Se comando "OK", então Executa-o if (CMD == "RL1#ON*") { printf("\nCMD.: %s", CMD); printf("\n\nComando OK!!!"); } //Fim do IF (Teste de Comando) }//Fim do IF (Check_ID) puts("\n\n"); system("PAUSE"); }//Fim do programa Principal: void main() Muito obrigado e forte abraço!!! HFP
×
×
  • Criar Novo...