私はウィットタイムを試しています。私は結果について驚いたclock()のデータ型は何ですか?
char cChar0[30];
char cChar1[30];
char cChar2[30];
char cChar3[30];
char cChar4[30];
clock_t t1;
clock_t t2;
clock_t t3;
uint16_t t4;
uint32_t t5;
uint16_t i;
uint16_t uInitDone;
void dateTime (void){
if(!uInitDone){
uInitDone = 1;
t1 = clock();
for (i = 0; i < 1000; i++){
sprintf(cChar0,"do something...");
}
t2 = clock();
t3 = t2 - t1;
t4 = (uint16_t)t2 - (uint16_t)t1;
t5 = (uint32_t)t2 - (uint32_t)t1;
sprintf(cChar1, "t1: %u; t2: %u;",t1,t2);
sprintf(cChar2, "t1: %u; t2: %u;",(uint16_t)t1,(uint16_t)t2);
sprintf(cChar3, "t1: %u; t:2 %u;",(uint32_t)t1,(uint32_t)t2);
sprintf(cChar4, "t3: %u; t4: %u; t5: %u;",t3,t4,t5);
}
}
int main(void) {
while(1)
dateTime();
return 0;
}
:私は、次の(役に立たない)コードをcreatet
cChar0 = "do something..."
cChar1 = "t1: 0;t2: 0;..."
cChar2 = "t1: 0;t2: 10498;..."
cChar3 = "t1: 0;t2: 0;..."
cChar4 = "t3: 1;t4: 10498; t5: 10498;..."
私はTIME.Hで確認し、宣言を見つけました:
typedef long time_t;
ことができます誰も私になぜcChar1のt2とcChar3 = 0を教えてください? 0と0(cChar1)の違いがあるように見えますが、なぜt3はcChar4 = 1ですか? 0と0(cChar3)の違いもあるように見えますが、なぜtCh5はcChar4 = 10498ですか?
'typedef long time_t'は基本的に' time_t'が 'long'と同じことを意味します。これは 'typedef'の要点です – Alex
なぜtCh2でcChar1 = cChar3 = 0ですか?これはclock()の戻り値でもあり、long型を意味します。 – nobody