C++/ C 포인터 질문 좀요

해박한 겨우살이2018.02.13 04:20조회 수 430댓글 6

    • 글자 크기

 

 

#include <iostream>

using namespace std;

int count;

 

typedef struct _BankBook{

int ID;

char *name;

int money;

}BankBook;

 

void Deposit(BankBook **p){

int id, amount;

cout<<"[입\t금]"<<endl;

cout<< "계좌 아이디:";

cin >>id;

cout << " 입금 액";

cin  >>amount;

 

p[id]->money+=amount;

cout<<"입금 완료" <<endl;

}

void Withdraw(BankBook **p){

int id, amount;

cout<<"[출\t금]"<<endl;

cout<< "계좌 아이디:";

cin >>id;

cout << " 출금 액";

cin  >>amount;

 

p[id]->money+=amount;

cout<<"출금 완료" <<endl;

}

 

BankBook* Open(){

BankBook *p=new BankBook;

cout<< "NAME:";

cin >> p->name;

p-> money=0;

p->ID = ::count;

return p;

}

 

void Info(){

 

 

}

 

 

int Menu(){

int choice;

cout<<"-----------"<<endl;

cout<<"1. 입금\n2. 출금\n3. 계좌정보 출력\n4. 종료\n 5. 계좌개설"<<endl;

cin >> "선택" >>choice;

return choice;

}

 

 

int main()

{

BankBook * p=NULL;

BankBook *arr=new BankBook[10]; //arr 타입 포인터 배열.

 

int choice=Menu();

 

switch(choice){

case 1:

Deposit(arr);

break;

case 2:

Withdraw(arr);

break;

case 3:

Info(arr);

break;

case 4:

return 0;

case 5:

p=Open();

arr[::count++]= p;

break;

 

}

}

 
 
 
 
저기 빨간색 배경 그은 부분에서 오류가 나는데요..
제 짧은 지식으로는 arr은 포인터 배열이니까 더블포인터로 받아주는게 맞는거같은데 아닌가요?
오류 뜨네요 .. 도와주세요 ㅠㅠ
 
    • 글자 크기
C++,c이용한 프로젝트 (by 자상한 흰씀바귀) c++같은 프로그래밍 프로그램 돌리려면 (by 신선한 마름)

댓글 달기

  • arr은 포인터 배열이 아니라 구조체 포인터고 Bankbook[10]만큼의 동적할당 받아서
    Bankbook[10]인 배열로 취급해야할거 같아요
  • @냉정한 사랑초
    arr 구조체 포인터인가요?.. 구조체를 가리키는 포인터 배열 아닌가요? ㅠㅠ 구조체 배열을 할당하지 않고 포인터 배열로 활용하고싶을땐 어떤식으로 접근해야 할까요?
  • @글쓴이
    BankBook **arr=new BankBook*[10];
    이렇게 하면 BankBook*을 배열의 원소로 가지면 포인터 배열이 생성됩니다.
  • 그리고 보통 이런 종류의 에러는 ide에러메세지에 뭐가 문젠지 나오니깐 에러메세지부터 봐요
  • 그리고 open함수에서 p리턴하는데 이거 지역변수라
    컴파일러에 따라 에러뜨고 안떠도 보통 워닝뜰텐데
    함수인자로 메인함수에서 p주소값 받아오게 해요
  • @냉정한 사랑초
    아 이거 생각못했네요 감사합니다 바로 수정 중입니다 ㅎㅎ
번호 제목 글쓴이 날짜
공지 욕설/반말시 글쓰기 권한 영구 정지10 저렴한 개불알꽃 2019.01.26
공지 식물원 이용규칙 (2018/09/30 최종 업데이트) - 학생회 관련 게시글, 댓글 가능17 흔한 달뿌리풀 2013.03.04
153758 C 받은거 재수강 하면8 고상한 물레나물 2018.07.05
153757 C 언어 질문 ㅠㅠ5 우아한 달맞이꽃 2016.10.25
153756 c 포인터 알려주세요 ㅎㅎ6 무례한 고구마 2017.03.15
153755 C 학점2 애매한 조팝나무 2019.06.16
153754 C+ 나온게 이해안돼서 세부성적 알려달라고 메일보낼생각인데10 꾸준한 풀협죽도 2016.12.28
153753 C+ 이하들은 재수강 꼭 하세여..17 나쁜 개쇠스랑개비 2015.12.30
153752 C+ 재수강 or C0 재수강4 이상한 삽주 2018.01.28
153751 C+ 재수강 하시나요 대부분?11 ♥ (부자 가는괴불주머니) 2011.07.29
153750 c+ 재수강 한다 vs 안한다8 다친 종지나물 2017.03.18
153749 C++ 돌리려면 노트북..!!4 애매한 수련 2018.06.14
153748 C++ 분반 바꾸실분 있나요? 잘생긴 새머루 2018.03.05
153747 c++ 아시는분..13 납작한 아그배나무 2016.07.02
153746 c++ 예습해가려는데요 선배님들!!!20 착실한 실유카 2017.08.20
153745 C++ 이기준 교수님 센스있는 타래난초 2016.05.18
153744 c++ 프로그래밍4 해맑은 밤나무 2017.03.02
153743 C++ 프로그래밍 난이도?!23 쌀쌀한 가래나무 2017.06.04
153742 C++,c이용한 프로젝트9 자상한 흰씀바귀 2016.08.18
C++/ C 포인터 질문 좀요6 해박한 겨우살이 2018.02.13
153740 c++같은 프로그래밍 프로그램 돌리려면6 신선한 마름 2017.10.23
153739 C++이랑 JAVA 기초 예습!!16 깨끗한 개모시풀 2019.08.04
첨부 (0)