본문 바로가기 메뉴 바로가기

Code Apes

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

Code Apes

검색하기 폼
  • 분류 전체보기 (46)
    • Coding (2)
    • TIL (33)
    • C\\C++ (9)
  • 방명록

C++ (5)
[C/C++] 표준입출력 함수의 장점과 단점

윤성우의 tcp/ip 책 15장 내용 정리 표준입출력 함수의 장점과 여러 시스템 함수 표준입출력 함수란? 표준입출력 함수는 단어 그대로 C언어에서 제공하는 표준입출력 함수이다. 종류에는 printf, scanf, fputs, fgets 등등이 있다. 여기서 말하는 표준의 기준은 "모든 운영체제(컴파일러)가 지원하도록 ANSI C에서 정의했다." 를 말한다. 괄호로 표현했지만, 정확히는 어떤 OS에서 C++ 컴파일러가 작동이 가능하면 모두 사용가능한 함수를 표준함수라고 할 수 있다. 표준입출력 함수의 장점 이식성이 좋다. 버퍼링을 통한 성능 향상에 도움이 된다. 첫번째, 이식성이 좋다는 말을 위에서 설명한 표준이라는 말로 전부 설명이 된다. 두번째, 성능에 도움이 된다. 이것을 풀어서 설명하는 것이 이 글..

C\\C++ 2023. 1. 21. 16:32
[C/C++] linux 멀티플렉싱. select 함수 개념 정리.

멀티플렉싱 소켓 통신을 구현하는 방법 중 멀티플렉싱이 있다. 멀티플렉싱이란 다중요청을 모아서 한번에 처리한다는 것이다. 지금까지 배운 방법에서는 (아직 멀티프로세스나, 멀티스레드의 개념을 배우지 않았기 때문에) 클라이언트가 접속을 요청하고 처리 할때마다 최소 서버와 클라이언트가 1:1로 필요했다. 즉 클라이언트 10개가 접속하면 서버도 10개가 존재해야 다중요청을 처리 할 수 있었다. 추가로 하나의 클라이언트는 최소한 2개의 동작, 전송과 수신을 동시에 처리해야하는 경우까지 더하면 더 많은 자원이 필요하다. 이것을 해결하는 방법은 여러가지가(멀티프로세스, 스레드 등) 있지만 그 중에서 select라는 linux systemcall 함수를 통해서 멀티플렉싱 방법을 배워보자.(윈도우에도 동일한 select가..

C\\C++ 2023. 1. 15. 01:38
[C/C++] #define 매개변수의 결합과 문자열화

#define STRING_JOB(A, B) "A의 직업은 B입니다." 위와같이 선언하고 STRING_JOB("홍길동", "의적") 이렇게 주면 "홍길동의 직업은 의적입니다." 라고 출력이 될것 같지만 틀렸다. "A의 직업은 B입니다." 원래 문구와 동일하게 출력이 된다. 이때 원하는 출력, "홍길동의 직업은 의적입니다."을 하기 위해 사용 하는 방법이 # 연산자이다. 문자열 내에서 매크로의 매개변수 치환이 발생하게 만들기: # 연산자 위의 문제를 해결하기 위해서는 #연산자를 사용하면 된다. #define STRING_JOB(A, B) #A"의 직업은" #B"입니다." #define STR(ABC) #ABC 이제 다시 STRING_JOB("홍길동", "의적") 를 실행하면 우리가 원했던 "홍길동의 직업은..

C\\C++ 2022. 12. 28. 18:10
[C/C++] 선행처리기(전처리)와 매크로

c(c++)의 소스 파일을 실행파일을 만들때 기본적인 과정은 아래와 같다. 1.소스파일 -> 2.컴파일 -> 3.링크 - > 4.실행파일 다만 컴파일에는 전처리라는 과정이 합쳐져 있다. 이 전처리를 풀어서 다시 나열해보면 1.소스파일 -> 2.전처리 -> 3.컴파일 -> 4.링크 - > 5.실행파일 그럼 전처리가 하는 역할은 무엇일까? c언어를 한번이라도 해봤다면 이미 전처리 문법을 사용했다고 볼 수 있다. #include 바로 이 문장이 전처리지시 문법이기 때문이다. #include 가 전처리를 전처리기(선행처리기) 에게 알려주는 문법이기 때문이다. 전처리와 컴파일은 어떤 것이 다른가? 전처리는 단어대로 어떤 일의 "전"에 하는 처리이고 그 어떤것은 "컴파일"이다. 이때 100%는 아니지만 "A를 B로..

C\\C++ 2022. 12. 26. 12:02
[C/C++] static 과 extern

static 의 특성 - 전역, 지역 관계없이 static 키워드가 붙은 변수는 프로그램 시작과 동시에 할당 및 초기화. - 단 한번 할당 및 초기화되고 프로그램 종료시까지 메모리 공간에 존재 변수 전역 static 변수 - 외부 파일에서 접근을 허용하지 않는다. 즉 "이 변수의 접근범위는 파일 내부로 제한한다" 이다. - 다른 파일에서 extern int num; 으로 참조를 하면 컴파일시 에러 발생. //main.cpp static int age = 14; int year = 2023; int main(int argc, char* argv[]) //func.cpp extern int age;//error extern int year;//ok int func(){ age++; year++; } 지역 s..

C\\C++ 2022. 12. 25. 11:51
이전 1 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
  • 푸의 개발 이야기
TAG
  • static의 장점 단점
  • c 매크로
  • 영속성전파
  • JPA #cascade
  • c 가변인자
  • ajax 403에러
  • 이중 콜론 연산자
  • 매크로
  • Java8 #java stream
  • 전처리기
  • MySql 날짜 차이 구하기
  • Double.compareTo(Double)
  • c++ 가변인자
  • #define
  • Til
  • JavaScript
  • 네트워크 오더링
  • linux select
  • 메소드 참조 연산자
  • 나만의 강점
  • Java Double형 비교방법
  • javascript 문자열 뒤집기
  • ##연산자
  • Builder #SuperBuilder
  • java
  • C++
  • JPA #SPRING #ENTITY #DATABASE
  • JPQL 사용하기
  • 표준입출력 함수
  • C언어
more
«   2025/05   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바