반응형
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
using namespace std;
 
int main(void){
 
    char c=3;
    int a=1;
    double d=1.0;
 
    char *p1=&c;
    int *p2=&a;
    double *p3=&d;
    cout<<"캐릭터 "<<(int)p1<<" "<<(int)(p1+1)<<endl//1->주소1증가
    cout<<"정수 "<<(int)p2<<" "<<(int)(p2+1)<<endl//1->주소4증가
    cout<<"실수(더블) "<<(int)p3<<" "<<(int)(p3+1)<<endl;//1->주소8증가
}
cs




char 포인터에 더하기 1을 하면 주소는 1이 증가
int 포인터에 더하기 1을 하면 주소는 4이 증가
double 포인터에 더하기 1을 하면 주소는 8이 증가
헷갈리지 말자




반응형

'컴퓨터 & 프로그래밍 & 전자공학 > C++' 카테고리의 다른 글

Accumulator 클래스  (0) 2017.11.09
MyIntStack 클래스  (0) 2017.11.09
변수와 포인터와 참조  (0) 2017.11.08
float와 double  (0) 2017.11.05
히스토그램  (0) 2017.11.03
반응형

int 타입의 정수를 객체화한 Integer 클래스를 작성하라. Integer의 모든 멤버 함수를 자동 인라인으로 작성하라. Integer 클래스를 활용하는 코드는 다음과 같다.


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
32
33
34
35
36
#include <iostream>
#include <string>
using namespace std;
class Integer{
private:
    int num; //int 형 변수 num
public:
    Integer(int i){
        num=i;  //생성자 i를 nu에 대입
    }
    Integer(string si){
        num=stoi(si); //스트링 si를 정수형으로 바꿔 num에 대입
    }
    void set(int i){
        num=i; //num을 set하는 함수 i를 대입
    }
    int get(){
        return num; //num을 반환하는 함수
    }
    bool isEven(){ //짝수인지 아닌지 판별하는 함수 맞으면 true, 아니면 false
    if(num%2==0)
        return true;
    else
        return false;
    }};
int main(void){
    Integer n(30);
    cout << n.get() <<' '//30 출력
    n.set(50);
    cout << n.get() <<' '//50 출력
    Integer m("300");
    cout << m.get() << ' ';
    cout << m.isEven();
    return 0;
}
 
cs




반응형

+ Recent posts