분류 전체보기 39
[c언어] 배열, 포인터 간단 정리
pointer 포인터를 선언할 때도 *를 사용하고 역참조를 할 때도 *를 사용한다. 같은 * 기호를 사용해서 헷갈릴수 있지만 선언과 사용을 구분해서 생각하면 된다. 즉, 포인터를 선언할 때 *는 이 변수가 포인터다라고 알려주는 역할이고, 포인터에 사용할 때 *는 포인터의 메모리 주소를 역참조하겠다라는 뜻. int *numPtr; // 포인터. 포인터를 선언할 때 * printf("%d\\n", *numPtr); // 역참조. 포인터에 사용할 때 * int num; int *numPtr; *numPtr = # (x) numPtr = # (o) *numPtr = num; (o) // *numPtr은 int형, numPtr은 포인터형(int형 포인터) // num 은 int형, &num은 주소형..
cs/c언어 | 2022. 9. 22. 13:30
Firebase에서 Github 인증 사용설정하기
1. Firebase 콘솔에서 승인 콜백 URL 얻기 Firebase 콘솔의 인증창에서 "로그인 방법 설정"버튼을 누르고 로그인 제공업체 탭에서 깃허브를 선택하면 위와같이 승인 콜백 URL와 클라이언트 ID, 비밀번호를 입력하는 창이 뜨게된다. 2. 깃허브 설정에서 OAuth App 등록하기 깃허브로 가서 Settings > Developer Settings > OAuth Apps로 들어가면 새로운 Oauth App을 생성할 수 있다. 생성하기에서 App이름과 홈페이지 URL, 그리고 1번 과정에서 얻은 승인 콜백 URL을 입력해준다. 3. 클라이언트 ID, 비밀번호 등록하기 생성된 OAuth App에 들어가면 클라이언트 ID와 비밀번호를 얻을 수 있다. 이를 다시 파이어베이스 콘솔창으로 돌아와서 입력해..
etc/firebase | 2022. 9. 22. 11:25
[모던 자바스크립트 Deep Dive] 04. 변수
4.1 변수란 무엇이고, 왜 필요한가? 자바스크립트 엔진이 10+20 이라는 식의 의미를 해석하면 + 연산을 수행하기 위해서 10과 20이라는 숫자 값(피연산자)을 기억한다. 컴퓨터는 연산(CPU)과 기억(Memory)을 수행하는 부품이 나누어져 있기 때문에 피연산자 값은 메모리주소에 저장되고, CPU는 이 값을 읽어 들여 연산을 수행한다. 연산 결과로 생성된 숫자 값 30도 메모리 주소에 저장되는데 이 값을 재사용하려면 주소를 통해 메모리 공간에 직접 접근해야하지만, 이는 치명적 오류를 야기하는 매우 위험한 방법이기에 자바스크립트는 개발자의 직접적인 메모리 제어를 허용하지 않는다. 따라서 30이라는 값은 재사용이 불가능하다. 만약 직접적인 메모리 제어를 허용하더라도 코드가 실행될 때마다 값이 저장될 메..
개발 도서 정리/모던 자바스크립트 deep dive | 2022. 9. 22. 11:21
Firebase 이메일 사용자 재인증하기 (requires-recent-login 에러)
파이어베이스를 이용해서 사용자를 삭제하기 위해 deleteUser()함수를 이용하여 구현했는데, 위와같은 오류가 발생했다. 그래서 공식 문서를 확인해보니 사용자 계정 삭제, 비밀번호 변경과 같이 보안에 민간한 작업을 하려면 최근에 로그인한 적이 있어야 한다고 설명되어있었다. 그래서 사용자 상태를 업데이트하기위해 재인증을 하는 코드를 추가해주어야하는데, 예시코드에는 credential을 받아오는 함수를 직접 작성하라 되어있고, 어떤 인자를 넣어줘야하는지 알려주지 않았다. 그래서 reauthenticateWithCredential을 선언한 파일로가서 받아야하는 인자의 타입이 AuthCredential임을 알아냈고, 구글에 검색해서 아래와 같은 결과를 찾았다. 나는 이메일을 이용하여 로그인을 구현하였기때문에 ..
etc/firebase | 2022. 9. 22. 00:28
HTTP와 HTTPS의 차이점
HTTP는 무엇일까? HTTP는 Hyper Text Transfer Protocol의 약자로, 인터넷 상에서 데이터(Hyper Text)를 주고 받기 위해서(Transfer) 서버/클라이언트 모델을 따르는 프로토콜입니다. 주로 웹 브라우저와 웹 서버간의 커뮤니케이션을 위해서 디자인 되었으며 ?? HTTP는 주로 TCP를 사용하고, 2020년부터 도입된 HTTP/3에서는 UDP를 사용합니다. 또한 기본 포트로 80번을 사용한다는 특징이 있습니다. 서버/클라이언트 모델: 클라이언트가 요청을 생성하기 위한 연결을 연다음 응답을 받을때 까지 대기하는 전통적인 방식 프로토콜: 컴퓨터 내부 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙 체계 HTTP의 문제점 HTTP 서버는 기본 80번 포트에서 서비스를..
cs | 2022. 7. 21. 16:14