C에서 시간을 조건문으로 하려고합니다.

damping의 이미지

안녕하세요. C초보자입니다.
지금 C에서 날짜를 체크하는 것을 만들려고 합니다.

제가 하려는 것은 시스템의 날짜(혹은 시간)와 주어진 날짜가 같을경우의
조건문을 만들려고 합니다.
그래서 알아보다가 time.h 에 struct tm을 사용하려고 했는데
잘 안되어서 설명 및 다른 방법에 대한 조언을 구하려고 합니다.

*tm은 연월일시간분초 와 tm_isdst 을 넣어주어야 되더군요.
그런데, tm_isdst의 역할을 무언지요?

그리고 전 날짜비교만을 할 것이기에 연도와 시간등은 필요가 없는데
다 해주어야하는지 모르겠습니다. 저함수를 사용하면 다 넣어줘야 제대로
시간을 가져오는 듯하더군요.
다음번에는 물론 시간만의 비교 혹은 시간을 포함한 비교도 해야겠지만
일단은 멈추어선것이 날짜비교입니다.

일종의 스케쥴링이라는 것(아주 작은 시간비교 --;)을 만드는데
조언을 구합니다. 관련문서 추천도 감사드리겠습니다.
즐거운 시간되십시요.

성재파파의 이미지

초 단위로 시각을 비교할려면
#include <time.h>
...

time_t now; -> time_t는 (unsigned) long 타입? 인가

time(&now); -> 현재시각을 1970년1월1일 00:00로 부터 경과된 시각

...

time(&after); -> 현재시각을 1970년 1월1일 00:00로 부터 경과된 시각

시간 차이는

time_t between-time;

between_time = after-now;

글구 현재시각이 몇년몇월몇일몇시몇분몇초를 알려면

time_t now;
struct tm st;
char buf[14+1];

time(&now);
st=*localtime(&now);
sprintf(buf,"%04i%02i%02i%02i%02i%02i",1900+st.tm_year,
1+st.tm_mon,st.tm_mday,st.tm_hour,st.tm_min,st.tm_sec);

위와 같이 하면 될 것 같네요.
글구 tm_isdst는 저두 안쓰는 건데 섬머타임적용여부 같은 걸 나타내는 걸루
알고 있는 데 잘 안써서요...

작은 시간비교는 밀리세컨드 같은 건..

struct timeval {
long tv_sec;
long tv_usec;
};
요걸 쓰면 될 것 같구요.

struct timeval tv;
gettimeofday(&tv); // 이런 식으로 쓰면 될 듯한데..

함 해보세요.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.