/ / Compare um ponteiro de data com uma data - c, arduino

Compare um ponteiro de data com uma data - c, arduino

Em um script Arduino, como faço para comparar um ponteiro de data com uma string que é uma data. Atualmente estou tentando:

while(year(t)=="1970") {
getTime();
}

mas estou ficando um não pode comparar um ponteiro com umErro de compilador de seqüência de caracteres que eu entendo, mas eu gostaria de comparar os dois de alguma forma e de alguma forma é onde estou preso. Obrigado por qualquer ajuda para este novato

Respostas:

1 para resposta № 1
if(year(t)==1970)
{
getTime();
}

year () retorna um inteiro de 4 dígitos. não é uma string.


1 para resposta № 2

Comparar strings deve ser feito usando strcmp() não com == operador

Você está realmente comparando os ponteiros e não as cordas usando ==


0 para resposta № 3

Eu importaria <string.h> Então use strcmp() para comparar as duas strings:

No seu caso

if (strcmp(string1,string2) == 0) {
//Some good stuff :)
}

C não suporta comparação direta entre strings. Isso porque as cordas são char matrizes e deve ser manipulado adequadamente

Geralmente, um loop for é necessário para fazer uma comparação adequada, mas neste caso é muito fácil usar uma função de biblioteca, que faz exatamente a mesma coisa

Só para saber, para comparar você usaria algo como

for(i=0;s[i]!="";i++) {
//Loop till end of string
//Check if every char of string 1 is equal to the one in the same position of string 2
}

Espero que isso tenha sido útil.

Cumprimentos.