다차원 배열 int arr[3][3]={{1,2,3},{4,5,6},{7,8,9}}; int arr[3][3]={1,2,3,4,5,6,7,8,8}; 포인터의 포인터 이중 포인터 or 더블 포인터 : 포인터의 포인터, 변수를 가리키는 또 다른 포인터 변수 int main(void){ double num=3.14; double * ptr=# double ** dptr=&ptr; *dptr=... // *dptr은 포인터 변수 ptr을 의미 *(*dptr)=... // *(*dptr)은 변수 num을 의미 } ptr은 주소고(함수에 전달할땐 주소가 복사되서 ptr값 바꿀 수 없어. &ptr로 전달해야돼) *ptr은 변수 num 다중 포인터 변수 : *연산자 2개이상 int main(void) { int..

포인터는 c언어가 Low 레벨 언어의 특성을 지닌다고 이야기하게 만든 장본인이다. 왜냐하면 포인터를 이용하면 메모리에 직접 접근이 가능하기 때문이다. 포인터 변수란 메모리의 주소 값을 저장하기 위한 변수이다. 포인터 변수의 크기는 64비트에서는 8바이트(=64비트 시스템에서는 주소 값을 64비트로 표현하니까), 32비트에서는 4바이트 int num=7; int * pnum; // 포인터 변수 pnum의 선언 pnum = # // num의 주소 값을 포인터 변수 pnum에 저장(변수만 저장가능, 상수x) 변수의 주소 값을 반환하는 & 연산자 포인터가 가리키는 메모리를 참조하는 * 연산자 다양한 포인터 형이 존재하는 이유 : 포인터 형은 메모리 공간을 참조하는 기준이 된다.(형의 일치) 포인터 변수의..
이전에도 알고리즘 문제를 풀 때 최대공약수, 최소공배수를 구하는 문제가 많이 나왔다. c언어를 공부하던 중 또 나와서 글을 올리게 됬다. 우리는 수학과가 아니므로 증명을 할 필요는 없다(대수학에서 배웠다 나는 수학과라서..) 최대공약수 int gcd(int a, int b) { return b ? gcd(b, a%b) : a; } ㅣ function gcd(n1, n2) { return n1%n2 ? gcd(n2, n1%n2) : n2; } 최소공배수 a * b / gcd(a,b)

네트워크 주소 변환 글로벌 IP 주소 : 보통 사설 IP주소 사설 IP 주소 : 인터넷에 연결하지 않고 자유롭게 사용해도 되는 주소 그런데 인터넷에 접속하는 대수가 너무 많아서 글로벌 IP 주소가 부족 => 클래스리스 어드레싱, IPv6, 네트워크 주소 변환 네트워크 주소 변환(Network Address Translation) NAT 인터넷 사업자로부터 할당 받으면 보통 IP주소는 16개. 500개가 필요해. 이때 NAT이 필요 먼저 내부 네트워크에는 사설 IP 주소를 할당(내부 네트워크 내에서 TCP/IP를 사용한 통신을 하기 위해서) 그리고 NAT에 의해 내부 네트워크에서 할당한 사설 IP 주소를 글로벌 IP 주소로 변환 단점 : 동시 접속 수의 문제(보유한 글로벌 IP 주소 수 이상의 호스트는 인..

연산자 sizeof : 자료형의 크기 확인가능 정수형 일반적으로 CPU가 처리하기에 가장 적합한 크기의 정수 자료형을 int로 정의한다. 따라서 int형 연산의 속도가 다른 자료형의 연산속도에 비해서 동일하거나 더 빠르다. char, short는 데이터의 양이 많아서 연산속도보다 데이터의 크기를 줄이는 것이 더 중요한 데이터 인 경우에 사용 실수형 보편적으로 선택하는 자료형 : double(과거에는 float) unsigned를 붙여서 0과 양의 정수만 표현하게 할 수 있다.(부호비트를 크기 비트로 변경)(양의 정수 2배) signed는 default값 (char는 예외일 수도 있어.) 아스키(ASCII) 코드 문자, 특수문자를 숫자로 표현(총 128개) 리터럴 상수 : 변수와 달리 이름이 없는 상수 i..

플렉스 박스 레이아웃과 기본 속성들 플렉스 박스 레이아웃 : 그리드 레이아웃을 기본으로 해 플렉스 박스를 원하는 위치에 배치하는 것 플렉스 컨테이너 : 컨테이너 플렉스 항목 : 플렉스 컨테이너에 담기는 웹 요소 주축 : 플렉스 항목을 배치하는 기본 방향(기본은 왼->오, 수평방향; 주축 시작점, 주축 끝점) 교차축 : 주축과 교차되는 방향(기본은 위->아래; 교차축 시작점, 교차축 끝점) display : flex | inline-flex .wrapper{ display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-webkit-flexx; display:flex; } flex-direction 속성 - 플렉스 방향 지정하기 flex-dire..

미디어 쿼리 이해하기 미디어 쿼리 : CSS3 모듈 중 하나로 사이트에 접속하는 장치에 따라 특정한 CSS 스타일을 사용하도록 해준다. 기본형 : @media [only | not] 미디어 유형 [and 조건] * [and 조건] 연산자 : and(조건 추가), 쉼표(동일한 연산), only(미디어 쿼리를 지원하는 웹 브라우저에서만 조건을 인식하게 해) not(다음에 지정하는 미디어 유형을 제외) 미디어 유형의 종류 미디어 쿼리의 조건 뷰포트 : 실제 웹 문서의 내용이 화면에 보이는 영역 웹 문서의 가로 너비와 세로 높이 width,height | min-width, min-height | max-width, max-height 단말기의 가로 너비와 세로 높이 dvice-width, device-heig..