【掲示板ご利用上の注意】

 ※題名は具体的に!
 ※学校の課題の丸投げ禁止!
 ※ソースの添付は「HTML変換ツール」で字下げ!
 ※返信の引用は最小限に!
 ※環境(OSとコンパイラ)や症状は具体的に詳しく!
 ※マルチポスト(多重投稿)は謹んで!

 詳しくはこちら



 本当はこんなに大きく書きたくはないのですが、なかなか守っていただけなくて…。
 守ってくださいね。お願いします。(by管理人)

C言語ソース⇒HTML形式ツール   掲示板2こちら


管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.19234

時計のプログラムと一時待機
投稿者---Brack(2005/01/16 19:20:50)


始めまして、
非常に初歩的な質問なのですが、
時計のプログラムというのは作れるのでしょうか?
まだ入門書をやっと読み終えたほどのレベルなので、
どのようにすれば作れるのか解りません・・・


話は別になってしまうのですが、
プログラムの途中で一時待機という関数はありますか?
例えば、main関数の中に以下のように書きます

printf("test1\n");
printf("test2\n");
return 0;

そうすれば結果は
test1
test2
と表示されるはずですが、
test1とtest2の表示される間に時間を置きたいんです。
test1が表示されてから2秒後にtest2を表示するなど・・・


同時に質問して申し訳ありません、
どうか回等のほどよろしくお願いします


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:時計のプログラムと一時待機 19239 Blue 2005/01/16 20:53:10
<子記事> Re:時計のプログラムと一時待機 19247 RiSK 2005/01/16 23:22:04


No.19239

Re:時計のプログラムと一時待機
投稿者---Blue(2005/01/16 20:53:10)


>一時待機
Sleep関数を使うのはどうでしょう。
#include <stdio.h>
#include <windows.h>

int main( void )
{
    printf( "test1\n" );
    Sleep( 2000 );
    printf( "test2\n" );
    return 0;
}



この投稿にコメントする

削除パスワード

No.19247

Re:時計のプログラムと一時待機
投稿者---RiSK(2005/01/16 23:22:04)


>時計のプログラムというのは作れるのでしょうか?

作れます。

>プログラムの途中で一時待機という関数はありますか?

C標準ライブラリの中にはありません。

>test1とtest2の表示される間に時間を置きたいんです。
>test1が表示されてから2秒後にtest2を表示するなど・・・

こんな感じで。
#include <time.h>
#include <stdio.h>
int my_sleep(double second)
{
    time_t start, end;
    if ((start = time(NULL)) == (time_t)-1) {
        return 0;
    }
    do {
        if ((end = time(NULL)) == (time_t)-1) {
            return 0;
        }
    } while (difftime(end, start) < second);
    return 1;
}
int main(void)
{
    puts("test1");
    my_sleep(2);
    puts("test2");
    return 0;
}



この投稿にコメントする

削除パスワード

No.19307

Re:時計のプログラムと一時待機
投稿者---Black(2005/01/18 23:35:59)


お二方、ありがとうございます。
待機の方法は良く解りました。

しかし、時計の作り方がいまだに解りません・・・
sleep関数などを使って、1秒刻みに動作するようにすればいいのでしょうか?
でもそうすると起動毎に現在時刻を合わせなければなりませんし

すごくおかしい質問をしているかもしれませんが、
どうか指南お願いします。


余談
恥ずかしながらBrackって名前はスペルミスです、正しくはBlackでした


この投稿にコメントする

削除パスワード

No.19312

Re:時計のプログラムと一時待機
投稿者---RiSK(2005/01/19 00:21:34)


>待機の方法は良く解りました。

本当ですか? time.h に含まれる標準関数について調べましたか?


>しかし、時計の作り方がいまだに解りません・・・

time.h を調べれば良いでしょう。


>sleep関数などを使って、1秒刻みに動作するようにすればいいのでしょうか?

えっ? そのつもりで「待機関数」について聞いたのでは?

# sleep関数は標準にありません。BlueさんのSleepは処理系依存。
# Black さんの環境が分からない以上,自作する必要があります。
# それが 私の my_sleep ですよ。本当に分かっているでしょうか?


>でもそうすると起動毎に現在時刻を合わせなければなりませんし

現在時刻を取得すれば OK. くどいですけど,time.h を調べてね。
#include <time.h>
#include <stdio.h>
int my_sleep(double second);  // No.19247参照
int main(void)
{
    time_t t;
    while ((t = time(NULL)) != (time_t)-1) {
        puts(ctime(&t));
        if (!my_sleep(1)) {
            return 1;
        }
    }
    return 0;
}



この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧