2011년 4월 12일 화요일

cpp] 예제로 바로 알아보는 c와 c++ - 23

#include <iostream.h>
#include <stdlib.h>
#include <string.h>
void main(void)
{
 char temp[30];
 unsigned int len;
 int howmany;
 char **str;

 cout << "How many?";
 cin >> howmany; //입력 버퍼에서 받는데 버퍼에 엔터는 그대로 남음.
 str = new char*[10];
 cin.ignore(1); //버퍼에서 하나를 비운다.
 for(int n=0; n<howmany; n++) {
  cout << "String:";
  cin.getline(temp, 30);
  len = strlen(temp);

  if(len != 0) {
   str[n] = new char[len+1];
   strcpy(str[n], temp);
  } else str[n] = ""; //NULL 문자가 저장된 곳의 주소.
 }
 for(n=0; n<howmany; n++) {
  //if(str[n]!="") { //이거도 됨.
  if(*str[n] != '\0') { //함수 포인터
   //str[n][0] //n번째의 제일 앞 주소.
   cout << str[n] << endl;
  
  } else cout << endl;
 }
 delete [] str;
}

받고 뿌리는 예제. 버퍼 클리어 참조.

댓글 없음:

댓글 쓰기

국정원의 댓글 공작을 지탄합니다.

대학원생의 투고 지도 ④ (완결) — 논문의 수준이란 무엇인가: 사다리와 사분위, 첫 논문 전략

완결편이다. "논문 수준"이라는 말을 해부하고, 에듀테크 석사생의 첫 논문 전략으로 마친다. 학위논문과 학술지 논문은 다른 장르다 먼저 가장 흔한 혼동부터. 학위논문(thesis)은 "내가 연구를 수행할 줄 안다...