|
#include<iostream>
#include<cstring>
using namespace std;
int main(void)
{
char temp[21]={0};
//이름을 입력받을 변수, 따로 변수를 만든 이유는 이름을 입력받아야 이름 크기만큼 할당 할 수 있으니까;
char **stuName=NULL;
//이중 포인터로 학생 이름을 저장할 변수 선언
int str_len=0;
int stuCnt = 0; //학생 수(물론 학생수는 입력하는 사람의 선택에 따라 그 수가 변경됨
cout<<"몇명의 학생을 입력하시겠습니까? : ";
cin>>stuCnt;
stuName = new char* [stuCnt];; //이중 포인터로 학생 이름을 저장할 변수 선언
for(int i=0;i<stuCnt;i++) //입력되는 학생 수만큼 반복(동적으로 할당된 배열만큼)
{
cout<<i+1<<" 번째 학생의 이름 : ";
cin>>temp;
str_len = strlen(temp)+1; // +1은 NULL 넣어줘야하니까~
stuName[i] = new char [str_len]; //학생 이름의 길이만큼 학생 이름[i] 변수에 배열을 할당
for(int j=0;j<str_len;j++)
{
stuName[i][j] = temp[j]; //이름 복사
}
}
for(int i=0;i<stuCnt;i++) //확인
{
for(int j=0;stuName[i][j]!=NULL;j++)
{
cout<<"stuName["<<i<<"]["<<j<<"] = "<<stuName[i][j]<<endl;
}
}
for(int i=0;i<stuCnt;i++)
{
delete [] stuName[i];
}
delete [] stuName;
return 0;
}
'study > C/C++' 카테고리의 다른 글
복사생성자 (0) | 2013.02.22 |
---|---|
포인터 변수와 주소 (0) | 2013.01.29 |
c++ string 함수 구현 (0) | 2013.01.25 |
동적할당된 다중(이중) 포인터를 인자로 함수 호출 (0) | 2013.01.23 |
c++ 연산자,자료형 (0) | 2012.12.20 |