Programming Language 28

[C/C++] ios_base 클래스, setf, fmtflags 출력 형식 지정

출력 모양을 바꿔보자결과값을 출력할 때 프로그래머의 임의대로 출력하는 형식을 지정하고 싶을 때가 있다이럴 때 setf를 사용한다ios_base::setf(MSDN) :: https://msdn.microsoft.com/ko-kr/library/1kte43a2.aspxsetf는 ios_base 클래스의 일부로 출력 형식을 바꿔주는 명령어다setf(ios_base::fmtflags)의 형태로 사용하는데 괄호 안에 들어가는 fmtflgs가 출력 형식을 지정하는 상수값이다dec: 10진수 형식이 정수 값hex: 16진수 형식의 정수 값oct: 18진수 형식의 정수 값boolalpha: 숫자 값이 아닌 bool 형식의 개체fixed: 고정 소수점 형식의 부동 소수점 값showpoint: 생성된 부동 소수점 필드에..

[C/C++] atan2 함수로 각도 구하기 (극 좌표계)

직각 좌표계? 극 좌표계?평면 상에서 어떤 점의 위치 또는 원점에 대한 상대적 위치를 나타내야 한다고 할 때 우리는 좌표계를 이용한다그 좌표계를 표현하는 방법은 대표적으로 2가지가 있다첫번째로 원점으로부터의 수평 거리와 수직 거리를 이용하여 위치를 표현하는 직각 좌표계(rectangular coordinates)가 있다그리고 원점으로부터의 거리와 수평축으로부터의 각도를 이용하여 위치를 표현하는 극 좌표계(polar coordinates)가 있다 수평축으로부터의 각도 구하기직각 좌표계는 고등수학과정에서 많이 다루므로 극 좌표계를 프로그램으로 구현해보자어떤 한 점 A가 직각 좌표계에서 x, y로 표현된다고 가정한다원점으로부터의 거리는 피타고라스의 정리로 구할 수 있다그렇다면 수평축으로부터의 각도를 어떻게 구..

[C/C++] 포인터와 const

포인터에 const를 사용해?const라는 키워드는 포인터에 두 가지 방법으로 사용된다첫 번째 방법은 상수 객체를 지시하는 포인터를 만드는 것이다상수 객체를 지시하는 포인터를 사용하여 그 포인터가 지시하는 값을 변경할 수 없다두 번째 방법은 포인터 자신을 상수로 만드는 것이다상수 포인터를 사용하여 그 포인터가 지시하는 장소를 변경할 수 없다 상수 객체를 지시하는 포인터 int age = 39; const int *pt = &age; pt += 1; //pt는 const int를 지시하고 있으므로 사용할 수 없다 cin >> *pt; //사용할 수 없다 *pt = 20; //pt는 const int를 지시하고 있으므로 사용할 수 없다 age = 20; //age는 const로 선언되지 않았기 때문에 사용할..

[C/C++] string 문자열 비교 ==? compare? strcmp?

문자열 비교값을 비교할 때 보통 == 연산자를 이용하여 동일 여부를 알아낸다하지만 문자열의 경우 == 연산자를 사용하면 원치 않은 결과를 가져올 수도 있다이는 값은 같을지라도 값이 저장된 메모리 주소가 다르기 때문이다char 배열을 이용한 문자열의 경우 변수는 주소를 가리키므로 == 연산자를 사용하지 않고 strcmp() 함수를 사용한다하지만 C++에서는 string 문자열일 경우 == 연산자를 사용할 수 있다이 이유는 연산자 오버로딩에 있다 strcmp(), compare()char 배열 형식의 문자열을 비교할 때는 strcmp() 함수를 사용한다strcmp( string1, string2 )라고 가정하자위 값이 0보다 작을 경우 string1이 string2보다 사전적으로 앞에 있다값이 0일 경우 s..

[C/C++] error C2872, 모호한 기호입니다

error C2872 #include using namespace std; ... bool is_empty(LinkedListType *list) { return list->head == NULL ? true : false; } void delet(LinkedListType *list, int pos) { if ((!is_empty(list)) && (pos >= 0) && (pos length)) { ListNode *p = get_node_at(list, pos - 1); ListNode *removed = get_node_at(list, pos); remove_node((&list->head), p, removed); list->length--; } } ... 위와 같은 코드를 실행하..

[C/C++] error C4996: 'strcpy' 'strcat' 오류 해결

error C4996cstring을 지시한 후 strcpy(), strcat()을 사용할 때 다음과 같은 컴파일 오류가 생길 수 있다 error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.error C4996: 'strcat': This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNI..

[C/C++] strlen 함수, 문자열의 길이

문자열(string)이란메모리에 바이트 단위로 연속적으로 저장되어 있는 문자들을 말한다두 가지 방법으로 문자열을 처리한다첫 번째는 char형의 배열을 이용한 방법이고 string 클래스 라이브러리를 이용한 방법이 있다char형의 배열을 이용할 때 문자열은 반드시 마지막에 '\0' 널 문자를 포함한다 strlen(string) strlen(string) 을 이용하여 문자열의 길이 값을 반환할 수 있다이를 사용하기 위해서는 cstring 헤더 파일을 지시해야 한다#include strlen() 함수는 배열의 전체 크기가 아니라 배열에 저장된 문자열의 크기를 반환한다 char name[15] = "C++Basic" 일 때C + + B a s i c \0name 의 문자열의 길이는 15도 아니고 9도 아닌 8이다

[Java] 객체 지향 프로그래밍

객치 지향이란 무엇인가? 객체는 무엇인가? 객체 지향이란 실제 세계를 모델링하여 소프트웨어를 개발하는 방법이다Java, C#, C++ 이 그 예이다 TV를 보고 있는 우리들의 모습을 상상해보자'나' 라는 객체가 'TV' 라는 객체를 '리모컨' 이라는 객체로 신호(메세지)를 주고 받으며 채널을 바꾼다이러한 개념을 프로그래밍의 세계에 반영한 것이다 객체(Object)는 상태와 동작을 가지고 있다객체의 상태(state)는 객체의 특징값(속성)이다프로그램에서는 필드로 구현된다객체의 동작(behavior)는 객체가 위할 수 있는 동작이다프로그램에서는 메소드로 구현된다소프트웨어 객체는 메세지(message)를 통해 다른 객체와 통신하고 상호작용한다 이와 비교되는 개념으로 절차 지향 프로그래밍(Procedural P..

728x90