Pebble プラットフォームのプロジェクトに取り組んでいます。アプリは C で書かれており、私の質問はそのプラットフォームに固有のものではありません。
Pebble API には、コード行によって毎秒入力されるPblTmと呼ばれる構造体があります。私の目標は、構造体を現在の時刻と比較することです。PblTm 構造体を作成し、比較する必要がある時間をそれらに入力しました。構造体の時間と分のセクションだけを気にします。これまでのところ、次のコードがあります。
bool comp_time(int h1, int m1, int h2, int m2, int h3, int m3) {
if((h1<=h2) && (h2<=h3)) //Is start hour <= now hour <= end hour?
{
if((h1=h2) && (m2>=m1)) //If start hour = now hour, is now min >= start min ?
{
return true;
}
if((h2=h3) && (m2<=m3)) //If end hour = now hour, if now min <= end min?
{
return true;
}
if((h1>h2) && (h2<h3)) //If start hour < now hour < end hour?
{
return true;
}
}
else
{
return false;
}
return false;
}
私は最初、次のような関数へのパラメーターとして構造体自体をフィードしようとしました。
comp_time(&first_start,&now,&first_end);
そして、関数内の構造体の要素を参照しましたが、それをコンパイルすることはできず、それに関する情報を見つけることができませんでした。(私は正しい用語を探していなかったかもしれません)。
次に、次のように int パラメーターを関数自体に供給するように変更しました。
comp_time(first_start.tm_hour,first_start.tm_min,now.tm_hour,now.tm_min,first_end.tm_hour,first_end.tm_min)
これは非常に不器用な方法ですが、すべてを入力する作業は既に完了しています。ただし、私の主な問題は、比較機能が機能しないことです。値が適合しない場合は true を返し、適合する値の場合は false を返します (明らかにランダムに、パターンを見つけることができませんでした)。
あなたはなにか考えはありますか?