20.09.14 (์›”)

Updated:

์˜ค๋Š˜ ํ•  ์ผ (๊ณ„ํš)

  • BaekJoon ๋งค์ผ ๋‘ ๋ฌธ์ œ ํ’€๊ธฐ
  • ๋‚˜ํ˜ผ์ž ์˜์ƒ ๋งŒ๋“ค๊ธฐ, UNIX 3์ฃผ์ฐจ ๋“ฃ๊ธฐ
  • ์ฐฝ์—…์˜์ด๋ก ๊ณผ์‹ค์ œ ๊ณผ์ œ
  • ๋ฌธ์ œํ•ด๊ฒฐ๊ธฐ๋ฒ• ํŒ€๋ฏธํŒ…
  • ์ด๋ฒˆ์ฃผ ํ•  ์ผ ๊ฐฑ์‹ 

์˜ค๋Š˜ ํ•œ ์ผ

  • BaekJoon ๋งค์ผ ๋‘ ๋ฌธ์ œ ํ’€๊ธฐ

    [BaekJoon] ๋ฐฑ์ค€ 5525๋ฒˆ : IOIOI

  • Unix 3์ฃผ์ฐจ ๋“ฃ๊ธฐ

    1. perror

      ์–ด๋–ค ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋Š”์ง€ ์•Œ๋ ค์ฃผ๋Š” ์‹œ์Šคํ…œ ์ฝœ ํ•จ์ˆ˜์ด๋‹ค.

      char *err = strerror(errno); ๋ฅผ ํ†ตํ•ด ์—๋Ÿฌ๋ฅผ ๋ฐ›์•„์™€์„œ ์ถœ๋ ฅ ํ•  ์ˆ˜ ๋„ ์žˆ์ง€๋งŒ perror ๋ฅผ ์“ฐ๋Š”๊ฒŒ ์ข‹๋‹ค.

    2. Make

      Makefile ์„ ํ†ตํ•ด ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ๋ช…๋ น์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

      ์˜ˆ๋ฅผ ๋“ค์–ด ํ•œ ํŒŒ์ผ ์•ˆ์— ์ฝ”๋“œ๊ฐ€ ๋„ˆ๋ฌด ๊ธธ์–ด ํ•จ์ˆ˜๋ฅผ ๋ถ„๋ฆฌํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ ์ปดํŒŒ์ผ ํ•  ๋•Œ๋Š” ๊ฐ™์ด ์ปดํŒŒ์ผ์„ ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค.

      ์ด๋•Œ Makefile ์„ ์•Œ๋งž๊ฒŒ ๋งŒ๋“ค๋ฉด main.c ์™€ func.c ๋ฅผ ๊ฐ™์ด ์ปดํŒŒ์ผ ํ•ด์„œ ํ•ฉ์ณ ์ค€๋‹ค.

      ๊ทธ๋Ÿฐ๋ฐ 9/14(์›”) 16:42 ์ง€๊ธˆ์€ ๊ต์ˆ˜๋‹˜์ด ์˜ฌ๋ ค์ฃผ์‹  ์ฝ”๋“œ๋ฅผ ๊ทธ๋Œ€๋กœ ์‹คํ–‰ํ•ด๋„ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋‹ˆ ํ•ด๊ฒฐ ์š”๋ง..

    3. ๋ช…๋ นํ–‰ ์ธ์ž

      int main(int argc, char *argv[]) ๋ฅผ ํ†ตํ•ด ์ถœ๋ ฅ ํ•  ์ˆ˜ ์žˆ๋‹ค.

      ์ด๊ฑด ์•„์ง ๊ณต๋ถ€๋ฅผ ์ข€ ๋” ํ•ด์•ผํ•  ๊ฒƒ ๊ฐ™๋‹ค..

    4. File open flag

      • O_RDONLY : ํŒŒ์ผ์„ ์ฝ๊ธฐ ์ „์šฉ์œผ๋กœ ์—ฐ๋‹ค.
      • O_WRONLY : ํŒŒ์ผ์„ ์“ฐ๊ธฐ ์ „์šฉ์œผ๋กœ ์—ฐ๋‹ค.
      • O_RDWR : ํŒŒ์ผ์„ ์ฝ๊ธฐ์™€ ์“ฐ๊ธฐ๊ฐ€ ๊ฐ€๋Šฅํ•˜๊ฒŒ ์—ฐ๋‹ค.
      • O_CREAT : ํŒŒ์ผ์ด ์—†์œผ๋ฉด ํŒŒ์ผ์„ ์ƒ์„ฑํ•œ๋‹ค. (Unix ์—์„œ ์ƒ์„ฑํ•จ์ˆ˜๋Š” ๋’ค์— E ๊ฐ€ ์—†๋‹ค)
      • O_EXCL|O_CREAT : ๊ธฐ์กด์— ์—†๋Š” ํŒŒ์ผ์ด๋ฉด ์ƒ์„ฑ, ํŒŒ์ผ์ด ์ด๋ฏธ ์žˆ์œผ๋ฉด ์˜ค๋ฅ˜๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
      • O_APPEND : ๊ธฐ์กด์— ์žˆ๋Š” ํŒŒ์ผ์˜ ๋งจ ๋์— ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•œ๋‹ค. (์ด๋•Œ ํŒŒ์ผํฌ์ธํ„ฐ๋Š” ํŒŒ์ผ์˜ ๋งจ ๋์—์„œ ์‹œ์ž‘)
      • O_TRUNC|O_CREAT : ํŒŒ์ผ์„ ์ƒ์„ฑํ•  ๋•Œ ์ด๋ฏธ ์žˆ๋Š” ํŒŒ์ผ์ด๊ณ  ์“ฐ๊ธฐ ์˜ต์…˜์ด๋ผ๋ฉด ๋‚ด์š”์„ ๋ชจ๋‘ ์ง€์šด๋‹ค.

๋‚ด์ผ ํ•  ์ผ

  • BaekJoon ๋งค์ผ ๋‘ ๋ฌธ์ œ ํ’€๊ธฐ
  • ๋ฌธ์ œํ•ด๊ฒฐ๊ธฐ๋ฒ• 3์ฃผ์ฐจ ๋“ฃ๊ธฐ
  • Technical Writing ๊ณผ์ œ

์ด๋ฒˆ์ฃผ ํ•  ์ผ

  • BaekJoon ๋งค์ผ ๋‘ ๋ฌธ์ œ ํ’€๊ธฐ
  • ๋ฐฑ์—”๋“œ ๊ธฐ์ดˆ ํŠผํŠผ ๋‹ค์ง€๊ธฐ
  • ์ˆ˜๊ฐ• ๊ณผ๋ชฉ 3์ฃผ์ฐจ ๋“ฃ๊ธฐ
  • Technical, ์ฐฝ์—…์˜์ด๋ก ๊ณผ์‹ค์ œ, Unix ๊ณผ์ œ

Categories:

Updated:

Leave a comment