#include <stdio.h>
// ์์ ๊ฐ๋ฅ์ง์ญ ์์
void change() {
int num;
*(&num + 11) = 50;
}
// ์์ ๊ฐ๋ฅ์ง์ญ ๋
int main(void) {
int x = 20;
printf("change ํจ์ ํธ์ถํ๊ธฐ ์ ์ x : %d\n", x);
change();
printf("change ํจ์ ํธ์ถํ ํ์ x : %d\n", x);
// ์ถ๋ ฅ => change ํจ์ ํธ์ถํ ํ์ x : 50
return 0;
}
1407.....640
1407.....644
๋ผ๊ณ ํ๋ฉด, ์ค์ ๋ก๋ 4byte(๋ฐฉ1๊ฐ)
๊ฐ ์ฐจ์ด๋๋ ๊ฒ์ด๋ค.*(1407.....640) = 50;
์ด๋ผ๊ณ ํด์ฃผ๋ฉด, x = 50;
์ด๋ผ๊ณ ํ๋ ๊ฒ๊ณผ ๋์ผํ๋ค.*(&num + โฆ)
num ์ฃผ์๊ฐ์ ๋ํด์ฃผ๋๊ฒ ๋ง๋ค. ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ ์ main ํจ์ ์์ change ํจ์๊ฐ ์์ด๊ธฐ ๋๋ฌธ์ด๋ค !!!int a = 10;
int* pa = &a; // a(int) ๋ฅผ ๊ฐ๋ฆฌํค๋ ๋ณ์.
int** ppa = &pa; // pa(int*)๋ฅผ ๊ฐ๋ฆฌํค๋ ๋ณ์.
/*
ppa => pa ์ฃผ์.
pa => a์ ์ฃผ์
a => 10์ ๊ฐ์ง๋ค.
*/
#include <stdio.h>
void change(int** num) {
**num = 50;
// *p = 50;
// x = 50; ๋ชจ๋ ๋์ผํ๋ค!!
}
int main(void) {
int x = 20;
int* p = &x;
printf("change ํจ์ ํธ์ถํ๊ธฐ ์ ์ x : %d\n", x);
change(&p);
printf("change ํจ์ ํธ์ถํ ํ์ x : %d\n", x);
a == *pa
? โ true.a == *(&a)
? โ true.a == **ppa
? โ *pa
โ a
โ true.๊ฐ์ฒด ๋ณ์์ ์ ๋ ํผ๋ฐ์ค๋ฅผ ์ ์ฅํ๋์ ?
๋ด ํ์ด
๊ฐ์ฌ๋ ํ์ด
โ๊ณต์ โ
ํ์ฌ, ๊ณต๊ฐ ๋ญ๋น๋ฅผ ์ค์
๋๋ค.๊ณต๊ฐ์ ํจ์จ์ ์ผ๋ก ์ฌ์ฉ
ํ๋ ์ด์ ๋ ์์ต๋๋ค.=> &b + 1 ์ ๋ณ์ a ์ ์ฃผ์๋ฅผ ๊ฐ๋ฆฌํจ๋ค! ๋ฌผ๋ก ๋ฐ๋ ์๋ ์์ง๋ง, ์ผ๋จ a๊ฐ ์คํ ๋ โ์โ์ชฝ์ ์์ด๋๊น โฆ
gistory ํ๋ก๊ทธ๋จ
๋ช
๋ น์ด ์น ๋๋ง๋ค ๋ณด์ฌ์ค.
gistory .git
3.9 ์ค์น
disable limit
3.9 ์ค์นํ์ผ ๋ค์ ์คํ
-modify
-add ํ๊ฒฝ๋ณ์
pip install gistory
gistory .git
Hello โ sha1 ๋ก ํด์ฑ, ์ํธํ.
์ echo Hello > b.txt
, git add .
ํ๋๋ฐ ์๋ก ์์๊ธธ๊น ?
Git : ๋ง์ฝ, ๊ธฐ์กด์ Hello ํด์ฑํ ๊ฐ์ด ์๋ค๋ฉด, ๋๊ฐ์ ๋ด์ฉ์ ์๋ก ์์ฑํ์ง ์๋๋ค !
์ฆ, ๋ด์ฉ โ sha1 โ ํน์ ๊ธธ์ด์ ์ํธ๋ฌธ(๊ธธ์ด ๋ชจ๋ ๋๊ฐ๋ค.)
โ Git ์ ์ต๋ํ ์ค๋ณต๋๋ ๋ด์ฉ์ ์ค์ด๊ธฐ ์ํด์ ์ด๋ ๊ฒ ํ๋ค.
์ ํ์ผ๋ช ์ e9~ ์ด๋ฐ์์ผ๋ก ํ๋ฉด๋๋๋ฐ, e9/์์ ์ ์ฅํ ๊น
์์ ๋๊ธ์ e9 ์์ผ๋ก ๋๋ฉด, objects ํด๋๊ฐ ์ฐจ๋ ์๋๊ฐ ๋๋ฆฌ๋ค?
โ ๋ฆฌ๋
์ค, ์๋์ฐ ํด๋๋ ํ์ผ์ด๋ ์๋ธํด๋์ ๊ฐ์๊ฐ 1๋ง ๊ฐ ์ ๋๋ก ์ ํ. ์ด๊ณผํ๋ฉด ๋๋ ค์ง..
์ฝ๋, commit ์ ๋ณด๋ ๋ชจ๋ ์ด๊ณณ์ ์ ์ฅ. โ ์ด๊ณณ์ ์์ฒญ๋๊ฒ ๋ง์ ํ์ผ ์ ์ฅ.
TREE ํํ
๋ก ์์ฑ.index ๋ณต์ฌ๋ณธ(Tree ํํ)
์ ๊ฐ๋ฆฌํจ๋ค.