0512 - ccyomni/ex250310_second GitHub Wiki
- ๋ฉ๋ชจ๋ฆฌ ๊ทธ๋ฆผ
#include <stdio.h>
int main()
{
int n = 10;
int n2 = n;
int* p = &n;
int* p2 = p;
}
#include <stdio.h>
int main()
{
char arr[3] = { 10,20,30 }
double darr[4] = { 10.1,20.2,30.3,40.4 }
char* pc = &arr[0];
double* pd = &darr[0];
}
#include <stdio.h>
int main()
{
int n = 10; //n์ intํ(4๋ฐ์ดํธ)
int* p = &n;
printf("%p %p\n", &n, p);
printf("%p %p\n", &n + 1, p + 1); //n์ด 1020์ด๋ฉด n+1์ 1024
printf("%p %p\n", &n+2, p+2);
}
#include <stdio.h>
int main()
{
int n = 10;
int* p = &n;
printf("%d %d\n", *&n, *p);
printf("%d %d\n", *(&n + 1), *(p + 1);
}
์ถ๋ ฅ ์๋จ
#include <stdio.h>
int main()
{
int arr[2] = { 100,200 };
int* p = &arr[0];
printf("%p %d", p, *p);
printf("%p %d", p+1, *(p+1));
}
๊ฐ์ ์ฝ๋
#include <stdio.h>
int main()
{
int arr[2] = { 100,200 };
int* p = &arr[0];
printf("%p %d", p, *(p+0);
printf("%p %d", p+1, *(p+1));
}
๊ฐ์ ์ฝ๋
#include <stdio.h>
int main()
{
int arr[2] = { 100,200 };
int* p = &arr[0];
printf("%p %d", p, p[0]);
printf("%p %d", p + 1, p[1]);
}
์ฃผ์ ์์๋ *๊ฐ ๋ถ์ ์ ์์ ์ฃผ์๊ฐ ๋ถ์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ด๋ฆ์ด ๋จ *(์ฃผ์+1)์ ์ฃผ์์ 1 ๋ํ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ด๋ฆ์ด ๋จ *(์ฃผ์+1) = ์ฃผ์[1]
#include <stdio.h>
int main()
{
int arr[2] = { 100,200 };
int* p = &arr[0];
printf("%d %d\n", arr[0], arr[1]);
printf("%d %d\n", p[0], p[1]);
}
#include <stdio.h>
int main()
{
double da[4] = { 1.1, 2.2, 3.3, 4.4 };
double* pd = &da[1];
printf("%g %g\n", da[1], pd[0]);
printf("%g %g\n", da[2], pd[1]);
printf("%g %g\n", da[0], pd[-1]);
}
#include <stdio.h>
int main()
{
int n = 65;
printf("%c %d\n", n, n); //c๋ ๋ฌธ์๋ก ์ถ๋ ฅํ๋ผ๋ ๋ป. ๋ฌธ์ A๊ฐ ์ถ๋ ฅ๋จ
printf("%c %d\n", 65, 65);
printf("%c %d\n", 'A', 'A');
}
์ถ๋ ฅ๊ฐ์ ์ ๋ถ A 65 ๋ฌธ์ 'A' ๋ฌธ์์ด "A" ๋ชจ๋ ๋ฐ์ดํฐ๋ ์ ์๋ก ์ ์๋จ
#include <stdio.h>
int main()
{
int n = 65;
printf("%c %d\n", n, n);
printf("%c %d\n", n+1, n+1);
}
์ถ๋ ฅ๊ฐ: A 65, B 66
- ๋ฌธ์ EnCoding
65=A, 66=B, 67=C
UNICODE : ์ ์ธ๊ณ์ ์ผ๋ก ํ์ค์ด๋ก ์๋ฆฌ ์กํ ์๋ ๋ฌธ์ ์งํฉ
ex) UTF-8 (1๋ฐ์ดํธ๊ฐ 65), UTF-16(2๋ฐ์ดํธ๊ฐ 65), UTF-32(4๋ฐ์ดํธ๊ฐ 65), WBCS
#include <stdio.h>
int main()
{
int n1 = 65;
int n2 = 'A';
printf("%d %d\n", n1, n2);
printf("%c %c\n", n1, n2);
}
์ถ๋ ฅ๊ฐ: 65 65, A A
- ๋ ๋ฌธ์ (\0) "ABC"๋ 4๋ฐ์ดํธ '\0'(๋ ๋ฌธ์)๊ฐ ํฌํจ๋์ด ์๊ธฐ ๋๋ฌธ "Hello"๋ 5๋ฐ์ดํธ๊ฐ ์๋ 6๋ฐ์ดํธ
#include <stdio.h>
int main()
{
char* s = "ABC";
char arr[4] = "ABC";
printf("%p %p\n", s, &arr[0]);
printf("%s %s\n", s, &arr[0]);
}
#include <stdio.h>
int main()
{
char* s = "ABC";
printf("%p %p\n", s, s);
printf("%s %s\n", s, s);
}
#include <stdio.h>
int main()
{
char* s = "ABC";
printf("%p %p\n", s, s+1);
printf("%s %s\n", s, s+1);
}
#include <stdio.h>
int main()
{
char* s = "ABC";
printf("%s %s\n", s, "ABC");
}
#include <stdio.h>
int main()
{
char* s = "ABC";
printf("%c %c\n", s[0], "ABC"[0]);
printf("%s %s\n", s, "ABC");
printf("%s %s\n", s+1, "ABC"+1);
printf("%p %p\n", s, "ABC");
}
์ถ๋ ฅ๊ฐ: A A ABC ABC BC BC 00007FF7A3B49BB0 00007FF7A3B49BB0
#include <stdio.h>
int main()
{
printf("%s %s\n", "ABC", "Hello");
printf("%s %s\n", "ABC"+1, "Hello"+1); //BC ello
printf("%p %p\n", "ABC", "Hello");
printf("%p %p\n", "ABC"+1, "Hello"+1); //๋ชจ๋ ๋ฌธ์๋ charํ, 1 ๋ํ๋ฉด 1๋ฐ์ดํธ ์ฆ๊ฐ๋ ์ฃผ์ ์ถ๋ ฅ
}
#include <stdio.h>
int main()
{
char* s1 = "ABC";
char* s2 = "Hello";
printf("%s %s\n", s1, s2);
printf("%s %s\n", "ABC"+1, "Hello"+1);
}
#include <stdio.h>
int main()
{
char* s1 = "ABC";
char* s2 = "Hello";
printf("%s %s\n", s1, s2);
printf("%c %d\n", s1[0], s2[0]);
printf("%c %d\n", s1[1], s2[1]);
printf("%c %d\n", s1[2], s2[2]);
}
์ถ๋ ฅ๊ฐ ABC Hello A 72 B 101 C 108
#include <stdio.h>
int main()
{
char* s1 = "ABC";
printf("%c : %d\n", s1[0], s1[0]); //A๋ฌธ์ ์ถ๋ ฅ
printf("%c : %d\n", s1[1], s1[1]); //B๋ฌธ์ ์ถ๋ ฅ
printf("%c : %d\n", s1[2], s1[2]); //C๋ฌธ์ ์ถ๋ ฅ
}
์ถ๋ ฅ๊ฐ A : 65 B : 66 C : 67
๊ฐ์ ์ฝ๋
#include <stdio.h>
int main()
{
char* s1 = "ABC";
for(int i = 0 ; i < 3; ++i)
printf("%c : %d\n", s1[i], s1[i]);
}
#include <stdio.h>
int main()
{
char* s1 = "ABCDEF";
for(int i = 0 ; s1[i] != '\0'; ++i) //๋ ๋ฌธ์๊ฐ ์๋๋ฉด ์ถ๋ ฅ
printf("%c : %d\n", s1[i], s1[i]);
}
์ถ๋ ฅ๊ฐ A : 65 B : 66 C : 67 D : 68 E : 69 F : 70 '\0'๊ฐ ๋ช ํํ ์ฝ๋
#include <stdio.h>
void PrintStringToAscii(char* s1)
{
for (int i = 0; s1[i] != '\0'; ++i)
printf("%c : %d\n", s1[i], s1[i]);
printf("\n");
}
int main()
{
char* s1 = "ABCDEF";
PrintStringToAscii("ABC");
}
์ถ๋ ฅ๊ฐ A : 65 B : 66 C : 67
#include <stdio.h>
void PrintStringToAscii(char* s1)
{
for (int i = 0; s1[i] != '\0'; ++i)
printf("%c : %d\n", s1[i], s1[i]);
printf("\n");
}
int main()
{
char* s1 = "ABCDEF";
PrintStringToAscii("ABC");
PrintStringToAscii(s1);
PrintStringToAscii("Hello");
}
์ถ๋ ฅ๊ฐ A : 65 B : 66 C : 67
A : 65 B : 66 C : 67 D : 68 E : 69 F : 70
H : 72 e : 101 l : 108 l : 108 o : 111