Posts
Q&A
(1:40) flexible array member์ ๊ฐ๋ ๊ตฌ์กฐ์ฒด, ์คํ vs ํ ๋ฉ๋ชจ๋ฆฌ ์์น๊ฐ ๊ถ๊ธํฉ๋๋ค.
์....! ์ดํดํ์ต๋๋ค.์คํ์๋ '๊ตฌ์กฐ์ฒด์ ์ ๊ทผํ๊ธฐ ์ํ' ํฌ์ธํฐ๋ง ๊ณต๊ฐ์ ๊ฐ๊ณ ์๊ณ ๊ตฌ์กฐ์ฒด ๋ณ์ ๋๋ ํฌ์ธํฐ๊ฐ ์ ์ธ๋๋ ์๊ฐ ๊ตฌ์กฐ์ฒด์ ๋ฉค๋ฒ๋ค์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ด ํ ๋น๋ฉ๋๋ค.struct flex pf; ์ด๋ ๊ฒ ์ ์ธ๋๋ค๋ฉด ์คํ์ ๊ตฌ์กฐ์ฒด ๋ฉค๋ฒ๋ค์ ์ํ ๊ณต๊ฐ์ด ํ๋ณด๋๊ฒ ์ง๋ง, (block scope์ ์ ๋ ฅ๋ ๊ตฌ์กฐ์ฒด์ ๊ฒฝ์ฐ)โปfile scope์ ์ ๋ ฅ๋ ๊ตฌ์กฐ์ฒด๋ผ๋ฉด, ์ด๊ธฐํ ์ฌ๋ถ์ ๋ฐ๋ผ BSS๋๋ DATA Segment์ ์ ์ฅ.struct flex *pf; ์ด๋ ๊ฒ ์ ์ธํ๋ฉด ์คํ์๋ ํฌ์ธํฐ๋ฅผ ์ํ ๊ณต๊ฐ์ด ์ผ๋จ ํ๋ณด๋๋๋ฐ,1) ๊ตฌ์กฐ์ฒด๊ฐ file scope์ ์ ๋ ฅ๋๋คโ ๊ตฌ์กฐ์ฒด๋ ์ด๊ธฐํ ์ฌ๋ถ์ ๋ฐ๋ผ BSS ๋๋ DATA Segment์ ์ ์ฅ2) ๊ตฌ์กฐ์ฒด๊ฐ ํจ์ ๋ด์ ์ ๋ ฅ๋๋ค. (์ด๋ฒ ์์ )2-1) ๊ทธ๋ฐ๋ฐ ๊ตฌ์กฐ์ฒด ํฌ์ธํฐ๊ฐ ํ์ผ๋ก๋ถํฐ ๋์ ํ ๋น๋ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ฐ๋ฆฌํจ๋ค.โ ๊ตฌ์กฐ์ฒด๋ ํ(heap) ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ ๋น๋ฐ์ ์ ์ฅ2-2) ๊ตฌ์กฐ์ฒด ํฌ์ธํฐ๊ฐ ๊ทธ๋ฅ ์ ์ธ๋ง ๋๋ค.โ๊ตฌ์กฐ์ฒด๋ ์คํ์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ ๋น๋ฐ์ ์ ์ฅ๊ทธ๋ฌ๋๊น ์ด๋ฒ ์์ ๋ ์คํ์๋ ํฌ์ธํฐ pf์ ๋ํ ๊ณต๊ฐ๋ง ์กํ์๊ณ ํ์๋ ๊ตฌ์กฐ์ฒด flex์ ์ ๋ฉค๋ฒ์ ๋ํ ๊ณต๊ฐ์ด ์กํ์๋ ๊ฒ์ ๋๋ค.์์ ์ ๊ฐ ์ดํดํ ๋ด์ฉ์ด ๋ง์๊น์?
- 0
- 1
- 446
Q&A
(๊ฐ์10:01) ๋ฐํ์ ์๋ฌ ๋ฐ์ํ๋ ์ด์
๊ณ ๋ฏผํด๋ณด๊ณ ์์ธ์ ์ฐพ์์ต๋๋ค.ํค๋ํ์ผ ๋ฅผ ํฌํจํ์ง ์์์ต๋๋ค.ํฌํจ์์ผฐ๋๋ ์ ์์ ์ผ๋ก ์๋์ ์ ๋๋๋ฐ..๊ทธ๋ ๋ค๊ณ ํ๋๋ผ๋1. ๋ฅผ ํฌํจํ์ง ์์์์๋ strchy( )ํจ์๊ฐ ํฌํจ๋ ๊ฒ์ ์ปดํ์ผ๋ฌ๊ฐ ๊ฑธ๋ฌ์ฃผ์ง ๋ชปํ ์ด์ ๋ ๋ฌด์์ธ๊ฐ์?2. ๋ง์ฝ ๋ด๋ถ์ ์ผ๋ก ์ด๋ ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋งํน์ด๋์ด์ strchr( )ํจ์๊ฐ ์์์๋ ์์ฒ๋ผ ์ ์์ ์ผ๋ก ๋น๋๊ฐ ๋์๋ค๊ณ ํ๊ฒ ์ต๋๋ค.๊ทธ๋ ๋ค๊ณ ํ๋๋ผ๋ strchr( )ํจ์๋ char* ํ์ ์ ๋ฐํํ๋ฏ๋ก ์์ ์ด ๊ฐ๋ฅํ์ง ์๋์?๋ฐ๋ผ์ ์ด๊ธฐ๊ฐ "Empty"๋ฅผ ์์ ํ ์ ์์ผ๋๊น ์๋ก์ด ์ ๋ ฅ๊ฐ์์ \n์ ์ฐพ์์ ํฌ์ธํฐ๋ฅผ find์ ๋์ ํ๊ณ , ๊ทธ๊ฒ์ \0์ผ๋ก ๋ฐ๊ฟ์ค ์ ์๋ ๊ฒ์ผํ ๋ฐ..์ ์ ์์ ์ผ๋ก ๋น๋๋์๋์ง ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.*์ ๋ visual studio2022๋ฒ์ ์ ์ฌ์ฉ์ค์ ๋๋ค.
- 0
- 1
- 412
Q&A
(13:05) ์ฝ์ ์ฐฝ์ ์ซ์์ ๋ฌธ์๋ฅผ ์์ด ์ ๋ ฅํ๋๋ฐ, ์ ์์ ์ผ๋ก ๋ฐ์๋ค์ ๋๋ค.
(์ฌ์ง)์์ธํ ์ค๋ช ๊ฐ์ฌํฉ๋๋ค.์ธํฐ๋ท์์ suffix์ ๋ํ ๊ฐ๋ ์ ์ฐพ์๋ด๋ ์์ง ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค..ใ ใ ์์ ์ ๊ฐ์์์ ์ฝ๋ ์์ฑ ์ฐฝ์์ floatํ ์๋ฃ์ ๊ฒฝ์ฐ ๊ฐ์ ๋์ ํ ๋, ๋ค์ f๋ฅผ ์ ๋ ฅํด์คฌ๋ ๊ฒ์ด ์ ๋ฏธ์ฌ(suffix)์ ๊ฐ๋ ์ด์๋ค๋ ๊ฒ์ ์ธ์งํ๊ณ ์์ผ๋, (+์์ฑํ ์ฝ๋๋ฅผ ๋น๋ ์ ์ปดํ์ผ๋ฌ๊ฐ suffix๋ก ์ธ์ํ๋ค๋ ๊ฒ์ผ๋ก ์ดํดํ๊ณ ์์ต๋๋ค.)์ฝ์ ์ฐฝ์์ ์ ๋ ฅํ 9094h์ ๊ฒฝ์ฐ ์ฌ๊ธฐ์ h๊ฐ suffix๋ก ์ธ์๋๋ค๋ ๊ฒ์ ์ ์ดํด๊ฐ ๋์ง ์์ต๋๋ค.------------------------------๋ค๋ง, ์ ๊ฐ ๊ทธ ๋ค์ ๊ฐ์ 8.7 ์ ๋ ฅ์คํธ๋ฆผ๊ณผ ์ซ์ ๋ฅผ ๋ฃ๊ณ ์ดํดํ๊ธฐ๋ก๋, ์์ ์ฒจ๋ถํ ์ฌ์ง์ ์ฝ์ ์ฐฝ ์คํ ๊ฒฐ๊ณผ์ ๊ฐ์ด ์ซ์+๋ฌธ์์ ๊ฒฝ์ฐex) 9094h๋ฅผ ์ฝ์์ฐฝ์ ์ ๋ ฅํ๋ค๊ณ ๊ฐ์ ํ๊ฒ ์ต๋๋ค.get_longํจ์ ๋ด์ ์๋, (๋น์นธ์ '์ ๋ ฅ์ ๋ค ์๋ฃํ๊ตฌ๋'๋ผ๊ณ ์ธ์งํ๋) scanfํจ์๊ฐ ๋งจ ์ฒ์ ์ซ์ 9094๋ฅผ ์ ์์ ์ผ๋ก ์ซ์๋ก ๋ฐ์๋ค์ ๋๋ค. โ ๋ฐ๋ผ์ "Your input 9094 is an integer. Thank you." ๋ผ๊ณ ์ถ๋ ฅ๊ทธ ๋ค์ (์ซ์์ ๋ฌธ์ ์ฌ์ด ๋น์นธ์ด ์๋ ์๋ ๊ฐ์: 12321 dfasd์ฒ๋ผ ๋น์นธ์ด ์๋ค๋ฉด scanfํจ์๊ฐ, '์ ๋ ฅ์ด ์๋ฃ๋๊ตฌ๋' ๋ผ๊ณ ์ธ์งํ ๊ฒ์ด๊ณ /9094h์ ๊ฐ์ด ๋น์นธ์ด ์๋ค๋ฉด ๋ฌธ์๋ฅผ ์ธ์ํ์ฌ '์ซ์๊ฐ ์๋๋ค, ์ ๋ ฅ์ด ์๋ฃ๋๊ตฌ๋' ๋ผ๊ณ ์ธ์งํ ๊ฒ์ ๋๋ค)โป์ฌ์ค ๋์ค์ ์ธ์๋๋ '๋ฌธ์'๋ฅผ charํ์ ์ผ๋ก ๋ฐ์๋ค์ฌ ์ด๊ฒ์ ASCII Code๋ฅผ ํตํ ์ซ์๋ก ๋ณํ์ด ๊ฐ๋ฅํ์ง ์์๊น ์ถ๊ธฐ๋ ํ์ง๋ง, ์ ์ด์ ํ์ ์ง์ ์๋ฅผ %ld๋ก ์ ๋ ฅํ์ ๋, ์ซ์+๋ฌธ์์ ๊ฒฝ์ฐ๋ ๋งจ ์ฒ์ ์ด๋ฏธ ์ซ์๊ฐ ์ ์์ ์ผ๋ก ์ ๋ ฅ์ด ๋ ์ํ์ธ๋ฐ, ๋ฌธ์ ์ ๋ ฅ์ด ๋ค์ด์๋ค๋ฉด? ์ด๊ฒ์ ์ปดํ์ผ๋ฌ๊ฐ (๋ฌธ์โ์ซ์ ๋ณํ๊ณผ์ ์ ์ ์ฉํ ์ ์๋) ์ ์์ ์ด์ง ๋ชปํ '์ซ์์ ๋ ฅ์ ๋๋ด๋' ์ ํธ๋ผ๊ณ ๋ฐ์๋ค์ผ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. [๋ฌธ์+์ซ์์ ๊ฒฝ์ฐ ์ฒ์ ์ ๋ ฅ๋๋๊ฒ '๋ฌธ์'์ด๊ธฐ์ ๋ง์ํ์ ๊ฒ์ฒ๋ผ ์ฒ์๋ถํฐ ์ ๋ ฅ์์์ด ๋ง์ง ์์ ์ ์์ ์ผ๋ก ์ ๋ ฅx]: ๋ฐ๋ผ์ '์ ์์ ์ผ๋ก ์ ๋ ฅ๋์ง ๋ชปํ' ์ซ์+๋ฌธ์์์์ ๋ค ๋ฌธ์๋ ๋ฒํผ์ ์ ์ฅ์ด ๋์๋ค๊ฐ, "Your input - h - is not an integer. Please try again."๋ฅผ ์ถ๋ ฅํ ๊ฒ์ ๋๋ค.์ ๊ฐ์์์ ์ดํดํ ๋ด์ฉ์ ๋ฐํ์ผ๋ก ์์ฑํ๋ค๋ณด๋ ๊ธ์ด ๋๋ฌด๋ ๊ธธ์ด์ก๋๋ฐ, ์๊ฐ์ด ๊ฑธ๋ฆฌ๋๋ผ๋ ์ฐจ๋ถํ ์ฝ์ด๋ด์ฃผ์ ์ ์ ๊ฐ ์๋ฒฝํ ์ดํดํ ๊ฒ์ธ์ง... ํ์ธํด์ฃผ์ ๋ค๋ฉด ์ ๋ง ๊ฐ์ฌํ๊ฒ ์ต๋๋ค.(์ฌ์ง)โปโปโป ์ ๊ฐ ์ฒ์ ๋๋ฆฐ ์ง๋ฌธ์์ 9094h ์ ๋ ฅ์ ๋ํด ์ฝ์์ฐฝ์ด "Wrong input. Please try again"๋ฅผ ์ถ๋ ฅํ์ง ์์ ๊ฒ์, get_longํจ์์์ ๋ง์ง๋ง์ input์ ๋ฆฌํดํ์ง ์์๊ธฐ ๋๋ฌธ์ ๋๋ค..ใ ใ ๋ฌธ์ ํ์ ์ ํท๊ฐ๋ฆฌ๊ฒ ํด๋๋ฆฐ ๊ฒ ๊ฐ์ ์ ๋ง ์ฃ์กํฉ๋๋ค...ใ ใ
- 0
- 2
- 930
Q&A
(1:24) ์ ๊ฐ ์์ฑํ ์ฝ๋์ ๊ต์๋๊ป์ ์์ฑํ ์ฝ๋์ ์ฐจ์ด๋ฅผ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.
ํด๊ฒฐํ์ต๋๋ค.์ ๊ฐ ์์ฑํ ์ฝ๋๋๋ก ์ ๋ ฅํ๋ฉด,i = 0์ผ๋ก for๋ฌธ์ ์ง์ ํ์ ๋ ๊ทธ๊ฒ์ i cr ์ถ๋ ฅ โ j ์ํ [์ด๊ฒ์ ์ ์ฒด i ์ํ๋งํผ ๋ฐ๋ณต]ํ๊ฒ๋ฉ๋๋ค.(์ฌ์ง)์ฒ์์ ์ฒซ for๋ฌธ์ ์ค๊ดํธ๋ฅผ ์์ ๊ณ ๋ for๋ฌธ์ ์์น๋ฅผ ๋๋ฑํ๊ฒ ์ ๋ ฅํด๋ณด๊ธฐ๋ ํ๋๋ฐ, ๊ทธ๋๋ ์ด๊ฒ์ญ์i ์ํ(cr์ถ๋ ฅ) โ j์ํ(์ค๋ฐ๊ฟ)์ผ๋ก ์๋ชป๋๋ค๋ ๊ฒ์ ๊นจ๋ฌ์์ต๋๋ค.
- 0
- 1
- 269
Q&A
(2:49) ์ฝ๋์ ์งํ ๋ฐฉ์์ด ๋จธ๋ฆฟ์์์ ๊ผฌ์ฌ๋ฒ๋ ค์ while๋ฌธ์ ์ถ๊ฐํ์์ ๋, ์ ์์ ์ผ๋ก ์ถ๋ ฅ๋๋ ์ด์ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.
๋ฒํผ์์ ํ๋ฒ ์ฝ์ด๋ค์ด๋ฉด ๊ทธ ๊ฐ์ ์ฌ๋ผ์ง๋ค.์ฆ, while(2)๋ฌธ continue; ๋ธ๋ญ์์ ์ if๋ฌธ์์ ์ฒ๋ฆฌํ ์ฒซ ๊ธ์๋ฅผ ์ ์ธํ ๋๋จธ์ง ๊ธ์์ ๋งจ ๋ง์ง๋ง \n๊น์ง ์ฝ์์ผ๋ก์ ๋ฒํผ์ ๋จ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ถ ์๋ชจํ ๋๊น์ง ๋ฐ๋ณตํ๋ค.๋ฐ๋ผ์ ๋ค์ ํ๋ฒ '์ฌ์ฉ์์ ์ ๋ ฅ์์ด' while(1)๋ฌธ์ ๋ฐ๋ณตํ ํ์๋, "Current ~ (y/n)"์ ์ถ๋ ฅํ ํ์๋ ์๋ค.์๋ฒฝํ ์ดํดํ์ต๋๋ค..ใ ใ ๋ฒํผ๋ผ๋ ๊ฐ๋ ์ฐธ ์ด๋ ค์ด ๊ฒ ๊ฐ์ต๋๋ค.
- 0
- 2
- 359
Q&A
5:30 ์ฝ์์ฐฝ ์คํ ํ ์ ๋ ฅ ์, ๋๋ฒ๊ทธ ์๋ฌ๊ฐ ๋ํ๋ฉ๋๋ค.
(์ฌ์ง)๋ค์ํ๋ฒ ์ฝ๋๋ฅผ ์ดํด๋ณด๋, ์ ๊ฐ num์ 2๋ฒ ์ ๋ ฅ๋ฐ๋๋ก ์ฝ๋๋ฅผ ์ง ๊ฒ์ ํ์ธํ์ต๋๋ค.
- 0
- 1
- 230
Q&A
scanf()ํจ์ ๋ฐํ ์ค๋ฅ(18:45๋ถ๋ถ)
์..!! ์์์ intmax_t ๋ถ๋ถ์ด ์ด๋ก์์ผ๋ก ํ์๋์ด ์ฃผ์ํํ์ง ์์์์๋ ์ฃผ์ํํด๋์๋ค๊ณ ์ฐฉ๊ฐํ์ต๋๋ค.๊ทธ๋์ ์ฌ์ ์ ์๋ฌ๊ฐ ๋จ๋๊ฑฐ์๋ค์. ํด๊ฒฐํ์ต๋๋ค.
- 0
- 1
- 253