a c t i v i t y . . ๐Ÿ‹/42 SEOUL

42 SEOUL ์นด๋Žƒ ํ•˜๋ฃจ์ผ์ง€: ft_printf

H J 2022. 7. 10. 17:29

๐Ÿ‰ 220527~28

ft_printf ๊ณผ์ œ ์‹œ์ž‘!

๊ณผ์ œ์—์„œ ์š”๊ตฌํ•˜๋Š” ๊ฒƒ๋“ค ๋Œ€์ถฉ ์‚ดํŽด๋ณด๊ณ  ์ผ๋‹จ makefile์ด๋ž‘ ํ—ค๋” ๋Œ€์ถฉ ๋งŒ๋“ค์–ด๋ดค๋‹ค!


๐Ÿ‰ 220607

gnl ๋‹ค ๋๋‚ด๊ณ  ๋‹ค์‹œ ๋Œ์•„์™”๋‹ค ใ…Ž.ใ…Ž

ft_printf ๊ณผ์ œ ์กฐ๊ฑด๋“ค ๋‹ค ์‚ดํŽด๋ดค์œผ๋‹ˆ๊นŒ ๊ฐ€๋ณ€ ์ธ์ž ๊ณต๋ถ€ํ•˜๊ณ  ๋…ธ์…˜์— ์ •๋ฆฌ ์™„ !

 


๐Ÿ‰ 220613

๋“œ๋””์–ด ๋‹ค์‹œ 42 ๊ณผ์ œ๋ฅผ ์‹œ์ž‘

์ผ๋‹จ ๊ธฐ๋ณธ์ ์œผ๋กœ %c, %s, %d, %i, %u, %x, %X, %% ํ•จ์ˆ˜ ๋กœ์ง์ด๋ž‘ ๊ธฐ๋ณธ ํ•จ์ˆ˜๋“ค์„ ์งœ๊ณ ~

ํ—ฅํ—ฅ ์ผ๋‹จ uitoa๋ผ๊ณ  ๋ฒ”์œ„๊ฐ€ ๋” ํฐ ๊ฒƒ๋„ itoa ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ƒˆ๋กœ์šด ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“  ๊ฒƒ ๋นผ๊ณ ๋Š” ๋‹ค libft์— ์žˆ๋˜ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค

 

๋”๋ณด๊ธฐ

์ฝ”๋“œ ๋‹ค ์งœ์„œ main.c ๋Œ€์ถฉ ์งœ์„œ ๋Œ๋ ค๋ณด๋ ค๋Š”๋ฐ ์ž๊พธ ์•„๋ž˜์™€ ๊ฐ™์€ ์—๋Ÿฌ๊ฐ€ ๋œฌ๋‹ค

Undefined symbols for architecture arm64:
  "_ft_if_zero", referenced from:
      _ft_uitoa in ft_printf_u-103704.o
  "_ft_itoa", referenced from:
      _ft_printf_dec in ft_printf_dec-2b6d79.o
  "_ft_numlen", referenced from:
      _ft_uitoa in ft_printf_u-103704.o
  "_ft_strlen", referenced from:
      _ft_printf_dec in ft_printf_dec-2b6d79.o
      _ft_printf_s in ft_printf_s-18d501.o
      _ft_printf_u in ft_printf_u-103704.o
  "_ft_toupper", referenced from:
      _ft_put_hex in ft_printf_hex-e2dc82.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

์ „์—๋„ ์ด๋Ÿฐ ์—๋Ÿฌ๋–ด๋˜ ๊ฒƒ ๊ฐ™์€๋ฐ ๊ทธ๋•Œ๋Š” ๋‚ด๊ฐ€ ๋ญ ์ž˜๋ชป ์“ด ๊ฒŒ ์žˆ์–ด์„œ ๊ทธ๊ฑฐ ๊ณ ์น˜๋‹ˆ๊นŒ ๋ฐ”๋กœ ์ œ๋Œ€๋กœ ์ปดํŒŒ์ผ๋์—ˆ๋˜ ๊ฒƒ ๊ฐ™์€๋ฐ...


๐Ÿ‰ 220614

https://github.com/paulo-santana/ft_printf_tester

 

GitHub - paulo-santana/ft_printf_tester: My tests for the ft_printf 42 project.

My tests for the ft_printf 42 project. Contribute to paulo-santana/ft_printf_tester development by creating an account on GitHub.

github.com

>> sh test m

 

์ด๋ฒˆ์—” ์ด ํ…Œ์Šคํ„ฐ ๋Œ๋ ค์„œ ํ‹€๋ฆฐ ๋ถ€๋ถ„๋“ค์„ ๊ณ ์ณ์คฌ๋‹ค!

์ฝ”๋“œ๋ฅผ ์งœ๋ฉด์„œ va_arg๋ฅผ ํฌ์ธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๋‹ค๋ฅธ ํ•จ์ˆ˜์—์„œ ์‚ฌ์šฉํ•˜๋ฉด ํ•จ์ˆ˜๊ฐ€ ๋๋‚˜๊ณ  ๋‚˜์„œ ๋ณ€๊ฒฝ๋œ ๊ฐ’์ด ์œ ์ง€๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๊ณ„์† ๊ฐ™์€ ๊ณณ๋งŒ ๋ฐ˜๋ณตํ•˜๋Š๋ผ ํ‹€๋ ธ๋˜ ๊ฒƒ์ด์—ˆ๋‹ค! ๊ทธ๋ž˜์„œ ํฌ์ธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ•จ์ˆ˜๊ฐ€ ๋๋‚˜๋„ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ์—ˆ๋‹ค!

 

๊ทธ๋ฆฌ๊ณ  ์ฃผ์†Œ ์ถœ๋ ฅ(p)์ด๋‚˜ 16์ง„์ˆ˜ ์ถœ๋ ฅ(x, X)์—์„œ ์ถœ๋ ฅํ•  ๋•Œ ์žฌ๊ท€ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ ๊ธธ์ด๊ฐ€ ์ œ๋Œ€๋กœ ๊ตฌํ•ด์ง€์ง€ ์•Š์•„์„œ ์ž˜๋ชป๋œ ๊ฐ’์ด return ๋˜๊ธธ๋ž˜ ์ผ๋‹จ ๊ธธ์ด๋ฅผ ๊ตฌํ•ด์ฃผ๋Š” ํ•จ์ˆ˜๋ฅผ ๊ฐ๊ฐ ๋”ฐ๋กœ ๋งŒ๋“ค์–ด์คฌ๋‹ค

 

์ด์ œ ๋‹ค์Œ ํ…Œ์Šคํ„ฐ ๋Œ๋ ค๋ณด๊ธฐ!

https://github.com/Tripouille/printfTester

 

GitHub - Tripouille/printfTester: Tester for the ft_printf project of 42 school

Tester for the ft_printf project of 42 school. Contribute to Tripouille/printfTester development by creating an account on GitHub.

github.com

>> make m

ํ•ดํ—ท!

 

๊ทผ๋ฐ ๋‚ด๊ฐ€ ๋งŒ๋“  main๋ฌธ์œผ๋กœ ์ปดํŒŒ์ผ ํ–ˆ์„ ๋• ์•„์ง๋„ ์œ„์™€ ๊ฐ™์€ ์—๋Ÿฌ๊ฐ€ ๋– ์„œ ์ข€ ๋” ๊ตฌ๊ธ€๋ง ํ•ด๋ด์•ผ ํ•  ๊ฒƒ ๊ฐ™๋‹ค


๐Ÿ‰ 220615

์™€ ๊น€ํ˜„์ง€ ์ง„์งœ ๋ ˆ์ „๋“œ ๋ฐ”๋ณด..

์ปดํŒŒ์ผ ํ•  ๋•Œ ์•„๋ฌด ์ƒ๊ฐ ์—†์ด *.c๋กœ ๋Œ๋ ธ๋˜ ๊ฑฐ์˜€๋‹ค.... ํ•˜ํ•˜............

์ €๋ฒˆ์—๋„ ๋˜‘๊ฐ™์€ ์—๋Ÿฌ๊ฐ€ ๋–ด์„ ๋•Œ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ–ˆ์—ˆ๋Š”์ง€ ๊นŒ๋จน์—ˆ๋Š”๋ฐ ๊ทธ๋•Œ๋„ ๋‹ค๋ฅธ ํŒŒ์ผ์— ์žˆ๋Š” ํ•จ์ˆ˜ ์‚ฌ์šฉํ•  ๋•Œ ๊ทธ ํŒŒ์ผ๊นŒ์ง€ ๊ฐ™์ด ์ปดํŒŒ์ผํ•ด์ฃผ์ง€ ์•Š์•„์„œ ์—๋Ÿฌ๊ฐ€ ๋–ด๋‹ค๊ฐ€ (๊ทธ๋• ๋ฐ”๋กœ ์•Œ์•„์ฐจ๋ ธ์ง€๋งŒ..) ํ•ด๊ฒฐํ–ˆ์—ˆ๋Š”๋ฐ..

์ด๋ฒˆ์—” libft ํด๋” ์•ˆ์— ์žˆ๋Š” ํ•จ์ˆ˜๋“ค๋„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ ‡๊ฒŒ ์ปดํŒŒ์ผํ–ˆ์–ด์•ผ ํ–ˆ๋‹ค..!!

gcc -Wall -Werror -Wextra *.c */*.c

main๋ฌธ ๋Œ๋ ค์„œ ๋Œ€์ถฉ ํ…Œ์ŠคํŠธ ์™„!


๐Ÿ‰ 220703

์—ด์‹ฌํžˆ ๋†€๋‹ค๊ฐ€ ๋“œ๋ŽŒ ์ƒˆ๋ฒฝ์— ๋‚ด์šฉ ์ •๋ฆฌํ•œ ๊ฑฐ ๋ณด๋ฉด์„œ ๋Œ€์ถฉ ๊ณต๋ถ€ํ•˜๊ณ  ํ‰๊ฐ€ ์ค€๋น„ ์™„ ~

 

๐Ÿ‰ 220710

๋„์ฐฉํ•ด์„œ ํ…Œ์Šคํ„ฐ ๋˜ ๋Œ๋ ค๋ณด๊ณ  ๋‹ค์‹œ ํ˜ธ๋‹ค๋‹ฅ ๊ณต๋ถ€ํ•ด์„œ ํ‰๊ฐ€ ๋‹ค ๋ฐ›์•˜๋‹ค !!

๋ณด๋„ˆ์Šค ๋ถ€๋ถ„์€ ์•ˆ ํ•ด์„œ 100์ ์œผ๋กœ ํ†ต๊ณผ ^^V