Program이란?어떤 작업을 수행할 수 있는 지시사항(코드)가 저장된 데이터 형태internet.exe라는 <span style="color: #00..
C & C++
·
Programming Languages/etc
개발자 C : 데니스 리치와 켄 톰슨 C++ : 비야네 스트롭스트룹(덴마크어: Bjarne Stroustrup) C 언어의 등장 배경 C 언어 등장 이전에 프로그램은 기계어와 1:1로 대응되는 Assembly 언어 기반으로 작성되었습니다. Assembly는 하드웨어 종속적 기호언어이기에 다른 종류의 하드웨어로 이식할 수 없는 호환성 Zero의 언어였습니다. 하나의 프로그램을 CPU 종류만큼의 여러번 작성해야 했습니다. 이 한계를 극복하고자 하드웨어의 구성에 맞추어 자동으로 어셈블리어를 생성하는 C언어가 등장하게 됩니다. Build 소스코드를 실행 가능한 프로그램으로 만드는 과정 Compile 일반적으로, 자연어에 가까운 소스코드를 하드웨어에 맞춘 바이너리 코드로 변경하는 작업을 의미한다. C 언어의 특징..
M1 Shift + Space 한영 전환 문제
·
Setup Dev. Env./Mac M1
윈도우와 맥의 한영 전환 키가 동일한 설정은 Shift + Space 뿐이다. 몬트레이 업그레이드시 한영 전환 Shift + Space 단축키가 Control + Space 로 강제 전환되어 있다. Fn + Shift + Spcae 입력으로, 해당 단축키 변경이 불가하다. * 해결법 - plist 직접 변경 1. 파인더 2. 숨김 폴더 보기 ⌘⇧. (Command + Shfit + . ) 3. User > Library > Preferences 폴더 4. com.apple.symbolichotkeys.plist 파일을 Xcode 또는 PlistEdit 로 열기 5. 60/value/parameters/Item2 의 값을 Number 를 131072 로 변경 6. 재부팅
(Window) VS Mysql 연동
·
Programming Languages/C++
1. MYSQL 설치+ 5.7x 로 설치+ 32bit 해도 됨(굳이 64bit No)+ MYSQL 8.0 요구사항 아니면, 큰 의미 없음 + 오류시 해결 자료 없음 + 해당 다운로드 링크+ 설치 참고 링크 2. MYSQL 완전 제거: 언제나 설치 후, 제거 방법 숙지가 먼저다. 연결, 사용 방법 확인보다. 1. 제어판 제거 2. 폴더 제거C:\Program Files -> mysqlC:\Program Files (x86) -> mysqlC:\ProgramData -> mysql3. 윈도우 MYSQL 환경 변수 설정 설치 경로 확인C:\Program Files\MySQL\MySQL Server x.x\lib 윈도우키 + S검색어: "고급 시스템 설정" or "advanced system setting" ..
M1 페러렐즈 윈도우 단축키 설정
·
Setup Dev. Env./Mac M1
하나하나 맥 기준으로 입력해주면, 윈도우에서 맥 단축키 그대로 사용 가능하다. 예시 - 윈도우 한글 키보드 101키 종류 3 기준 1. 한영 전환 맥: shift + space, 페럴렐즈 윈도우: shift + spcae 2. 한자 전환 맥: shift + space, 페럴렐즈 윈도우: shift + spcae
참조 차이 (C# 객체와 C++ 포인터)
·
Programming Languages/C#
int* xp의미는 &int (int 크기의 실제 값[13]이 담긴 공간의 주소값 [0x0012FF44]) int* xp에 담음 일반 변수 포인터 변수 참조 변수 일반 변수는 / 기본적으로 메모리 주소를 1번 참조해서 실제 값을 가져온다. C++ 포인터 변수명, 참조를 참조 변수명 >> ref >> value C++ 참조 변수명, 참조 변수명 >> value C# 객체 변수명, 참조 변수명 >> value : C++ 에서, 일반적으로 array, vector 같은 컨테이너는 생성시, 변수명은 포인터다. (참조의 참조값이다.) 이를 함수내에서 참조 접근하려면, 정의시 *포인터 연산자를, 함수 내의 CRUD는 &주소 연산자로 접근한다. 일반 변수 타입도 같은 방법을 쓴다. : C# 에서 array, list..
[ C#, C++ ] thread, async, Parallel
·
Programming Languages/C#
c++ thread, async 예시 //C++ #include #include // 쓰레드 사용시, client list 벡터 std::vector clientlist; wsa wsa; // 쓰레드 버전 clientlist.push_back(new std::thread(&wsa::client, wsa, sock_connected, clientAddr, &clientlist)); // Async 사용시, client list 벡터 a_clientlist.push_back(std::async(std::launch::async, &wsa::client, wsa, sock_connected, clientAddr, &clientlist)); c++ thread, async 비교 // c++ async std::..
Thread.Sleep & Task.Delay
·
Programming Languages/C#
- Thread.Sleep( ) 코드가 선언된 부분의 해당 쓰레드를 일정시간 멈추는, 시스템(OS) 메서드다 새롭게 쓰레드가 생성되지 않는다. 실행중인 쓰레드를 멈춘다. - Task.Delay( ) 별도의 비동기(쓰레드)가 생성되어 시간만큼 지연시킨다. // 아래와 같이 사용할 경우, await Task.Delay(1000) 과 논리적으로 같은 역할을 한다. Thread t1 = new Thread(() => Thread.Sleep(1000)); t1.Start( ); 예제) using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Thread..
3) Task, Task<T>, Parallel, Async
·
Programming Languages/C#
// ramda Task task = new Task( () => PrintMessage() ); task.Start(); 대표사진 삭제 사진 설명을 입력하세요. 1)대리자 + 2)람다 -> 3)비동기 -> 4) .NET 네트워크 C# 스타일에 맞는 네트워크 프로그래밍을 하려면, 비동기(Thread, Task, Async, Parallel) 구조 구현을 이해해야 한다. C# 스타일 비동기 구조 구현을 위해서는, 대리자와 이벤트를 이해해야 한다. C# 에서 대리자와 이벤트의 사용은 사용자 생성 대리자와, func, action 대리자에 람다를사용 할 수 있어야 한다. C#에서 thread 보다 비동기(Task, Async, Parallel) 이 더 효과적이다. 1. TPL (Task Parallel Lib..
2) Lamda
·
Programming Languages/C#
사진 삭제 사진 설명을 입력하세요. 1)대리자 + 2)람다 -> 3)비동기 -> 4) .NET 네트워크 C# 스타일에 맞는 네트워크 프로그래밍을 하려면, 비동기(Thread, Task, Async, Parallel) 구조 구현을 이해해야 한다. C# 스타일 비동기 구조 구현을 위해서는, 대리자와 이벤트를 이해해야 한다. C# 에서 대리자와 이벤트의 사용은 사용자 생성 대리자와, func, action 대리자에 람다를사용 할 수 있어야 한다. 기본적으로 람다는 쓰지 않는다. C#을 제외하고 디버깅이 힘들다. 한번 쓰고 두번 다시 쓰지 않을 경우, 3줄 이하의 코드에서만 쓴다. 1. 람다식과 대리자로 만드는 무명 메서드 2. Statement Lambda (매개변수_목록) = > { 문장1; 문장2; 문장3..
1) Delegate
·
Programming Languages/C#
사진 설명을 입력하세요. 1)대리자 + 2)람다 -> 3)비동기 -> 4) .NET 네트워크 C# 스타일에 맞는 네트워크 프로그래밍을 하려면, 비동기(Thread, Task, Async, Parallel) 구조 구현을 이해해야 한다. C# 스타일 비동기 구조 구현을 위해서는, 대리자와 이벤트를 이해해야 한다. C# 에서 대리자와 이벤트의 사용은 사용자 생성 대리자와, func, action 대리자에 람다를사용 할 수 있어야 한다. : C#은 객체지향 프로그래밍 언어다. : Delegate(대리자)또한, 함수를 객체화시켜 다형성을 이루는 하나의 방법일 뿐이다. C# delegate 참고 링크1 - Delegate 1. Noun (집단의 의사를 대표하는) 대표(자) 2. Verb (권한업무 등을) 위임하다 ..