본문 바로가기

분류 전체보기453

배열 포인터 #include #include #include "Car.h" using namespace std; void main() { Car car; car.CarInfo(); //Car car1("이건제조사","색깔","이건가격","모델"); //Car car1; //car1.Car::Car("이건제조사", "색깔", "이건가격", "모델"); //car1.CarInfo(); Car* car2 = &car; car2->CarInfo(); Car* car3 = new Car; car3->CarInfo(); delete car3; // 메모리 낭비를 줄이기 위해 반드시 deltete 해줘야 한다 Car car4[3]; // 객체 생성 가능 for (int i = 0; i < 3; i++) { car4[i].CarI.. 2020. 10. 20.
자동차에 대한 클래스 작성 1. 자동차에 대한 클래스 작성하기. 조건1) 속성 - 대리점명은 상수 클래스변수로 선언. : static 변수 조건2) 속성(변수) - 제조사, 색상, 가격, 모델명은 인스턴스 변수로 선언. 소멸자 추가 조건3) 기본 생성자를 만들고 아래의 속성값들을 초기화 바람. 제조사 - "기아", 색상 - "블랙", 이름 - "K7" 가격 - "사천만원", 대리점명 - "동대구 영업소" (스트링) 조건4) 모든 속성들을 매개변수로 전달하여 객체를 생성할수있는 생성자 추가. 조건5) 모든 속성 정보들을 출력하는 인스턴스 메쏘드(함수) 추가. [출처] Java 클래스 1번째|작성자 박x신 car.h #pragma once #include #include using namespace std; class Car { pr.. 2020. 10. 19.
static / 소스파일cpp ,헤더파일h 분리 예제+사칙연산 추가 #include #include "classAddH.h" using namespace std; Adder::Adder(int a, int b) { op1 = a; op2 = b; } int Adder::process() { return op1 + op2; } 2020. 10. 19.
헤더파일, cpp파일 분리. p140 Adder, calculator #include using namespace std; class Adder { // 덧셈 모듈 클래스 int op1, op2; public: Adder(int a, int b); int process(); }; Adder::Adder(int a, int b) { op1 = a; op2 = b; } int Adder::process() { return op1 + op2; } class Calculator { // 계산기 클래스 public: void run(); }; void Calculator::run() { cout > a >> b; // 정수 두 개 입력 Adder adder(a, b); // 덧셈기 생성 cout > a >> b; // 정수 두 개 입력 Adder adder(a, b); // 덧셈기.. 2020. 10. 19.
소스파일cpp ,헤더파일h 분리 예제 (p136) Circle.h //#pragma once #ifndef CIRCLE_H__ #define CIRCLE_H__ #endif // !__CIRCLE_H__ class Circle { private: //변수는 private int radius; public: Circle(); // 기본 생성자. 생성자는 타입이 없음. Circle(int r); // 매개 변수 있는 생성자 ~Circle();// 소멸자 // getter double getArea(); // setter. inline void setRadius(int r) { radius = 4; } }; Circle.cpp #include #include "Circle.h" using namespace std; Circle::Circle() { cout 2020. 10. 19.
캡술화 private public 변수는 private , 함수는 public 으로 작성하는 것이 캡슐화에 기반한 class 작성방법. #include using namespace std; class Circle { private: //변수는 private int radius; public: // 함수는 외부에서 접근 가능하도록 public Circle(); // 기본 생성자. 생성자는 타입이 없음. Circle(int r); // 매개 변수 있는 생성자 ~Circle();// 소멸자 // getter double getArea(); // setter. void setRadius(int r) { radius = 4; } }; Circle::Circle() { cout 2020. 10. 19.
라즈베리파이 설치 https://hoho325.tistory.com/212라즈베리파이4b에 최신 버전 wiringpi 설치하는 방법라즈베리파이에서 gpio를 쉽게 사용하기 위해서 wiringpi를 사용하려고 합니다 아마 기본적으로 깔려있을 수 있습니다 만약 깔려있지 않거나 지웠다면 다음과 같은 방법으로 다운 가능합니다 sudo ahoho325.tistory.com 2020. 10. 19.
생성자 class Circle { Circle(); //생성자 이름 = 반드시 클래스 이름과 동일 Circle(int r); // 리턴타입 명기하지 않음 }; Circle::Circle(){ //매개변수 없는 생성자 } Circle::Circle(int r){ // 매개변수를 가진 생성자 } 2개의 생성자 중복 선언 : 오버로딩 단 매개변수가 다를 경우 매개변수 없는 생성자 : 디폴트 Circle(); Circle(int r); 메소드 오버로딩 (중복정의) - 객체지향언어에서 볼 수 있는 특징 #include using namespace std; class Circle { public: int radius; Circle(); // 기본 생성자. 생성자는 타입이 없음. Circle(int r); // 매개 변수 .. 2020. 10. 14.
cpp class 원넓이, 사각형면적 #include using namespace std; //클래스는 첫자는 반드시 대문자 class Circle { public: // 모든 곳에서 접근 가능 // 멤버변수 int radius; // 멤버함수 double getArea(); }; //멤버함수 정의 double Circle::getArea() { // 클래스 영역 return 3.14 * radius * radius; } int main() { Circle donut; //객체 생성 donut.radius = 1; // 객체이름.멤버 double area = donut.getArea(); cout 2020. 10. 14.
입력받는수의 합을 구하는 프로그램 4. 2개의 숫자를 입력 받아서 첫번째 숫자는 시작, 두번째 숫자는 마지막을 나타냄. 시작부터 끝까지 수의 합을 구하기. 조건 1) 입력받는 두번째의 수가 첫번째 수보다 작거나 같으면 에러 표시. ------------------------------------- 입력받는수의 합을 구하는 프로그램 ------------------------------------- 1. Num1 입력 => 1 2. Num2 입력 => 100 1 ~ 100 까지의 합 : ??? [출처] C언어 loop문 (반복문) 기본 알고리즘 5번째|작성자 박x신 int main() { int num1 = 0; cout num1; cout 2020. 10. 13.
QQ 중복 제거 하는중 - 간단한 로또 프로그램. 1. goto 사용 #include #include #include using namespace std; //로또 중복 체크 : 1 ~ 45 중 에서 6개 숫자 랜덤 생성 int main(void) { int lotto[6] = { 0, }; srand((unsigned int)time(NULL)); for (int i = 0; i < 6; i++) { AGAIN: int n = rand() % 45 + 1; // 1 ~ 45 //cout 2020. 10. 13.
음료수 자동판매기 프로그램 #include #include #include using namespace std; int main() { cout 2020. 10. 13.
for (auto n : aList) #include using namespace std; int main() { int aList[5] = { 10, 20, 30, 40, 50 }; // 범위 기반 C++11 스타일 반복문 // 각 요소의 값을 n에 복사 for (auto n : aList) //auto: 반복 횟수를 자동으로 지정해줌 cout 2020. 10. 13.
배열형태로 동적생성, 삭제 #include using namespace std; int main() { // 배열 형태로 동적 생성함. int* arr = new int[5]; for (int i = 0; i < 5; i++) { arr[i] = (i + 1) * 10; } for (int i = 0; i < 5; ++i) { cout 2020. 10. 13.
메모리 동적 할당 * #include int main() { // 메모리 동적 할당 int* pData = new int; int* pNewData = new int(10); //*pData = 5; std::cout 2020. 10. 13.
char string #include #include //#include 두개 중에 하나만 쓰면 됨 #include using namespace std; int main() { int nAge; cout 2020. 10. 13.
cout cin #include using namespace std; int main() { cout > width; //키보드로부터 너비를 읽어 width 변수에 저장 int height = 0; //cout 아래에 쓰던지 위에 쓰던지 상관 없음. 초기화 해주는 것이 코드가 길어질 경우 실수 방지를 위해 좋다 cout > height; //키보드로부터 높이를 읽어 height 변수에 저장 int area = width * height; // 사각형의 면적 계산 cout width; //키보드로부터 너비를 읽어 width 변수에 저장 int height; //cout 아래에 쓰던지 위에 쓰던지 상관 없음 cout > height; //키보드로부터 높이를 읽어 height 변수에 저장 int area = width * h.. 2020. 10. 13.
<iostream> cout << #include #include int main() { printf("hello c\n"); std::cout 2020. 10. 13.
TEST1008 server#include #include #include #include #include #include #include #include #define BUF_SIZE100 #define SERVER_IPINADDR_ANY //문제1. IP #define SERVER_PORT"9987" //문제1. 포트번호 struct user { char id[10]; char sock_num; }; struct user aa[10]; void error_handling(char *buf); int main() { int sock_check; int serv_sock, clnt_sock; struct sockaddr_in serv_adr, clnt_adr; struct timeval timeout; fd_set re.. 2020. 10. 8.
makefile # #타겟 : 의존성 # 명령어 CC = gcc CFLAGS = -W -Wall TARGET = echo_selectserv OBJECT = echo_selectserv.o SRC = echo_selectserv.c $(TARGET) : $(OBJECT) $(CC) $(CFLAGS) -o $(TARGET) $(OBJECT) $(OBJECT): $(SRC) $(CC) $(CFLAGS) -c -o $(OBJECT) $(SRC) clean: rm *.o $(TARGET) 2020. 10. 8.