mp3프로그램에서 error C2061: 구문 오류 : 식별자 'string'가 뜨네요;;
글쓴이: ansgur1979 / 작성시간: 토, 2012/04/21 - 11:21오후
헤더파일에
void upVolume(int& vol);
void downVolume(int& vol);
void nextSong(int mode, int& curnum, int max);
void prevSong(int mode, int& curnum, int max);
int ffSong(int& cursong, int cursongmax);
void rewSong(int& cursong);
void changeSong(int num, string name, int time, int& curnum, string& curname, int& curtime, int& maxtime);
int selectOnList();
선언한 함수의 내용을 cpp에
#include <iostream>
#include <string>
#include "mp3header.h"
using namespace std;
void upVolume(int& vol) //만약 볼륨이 20미만이면 현재볼륨을 1씩 증가함
{ if(vol < 20) { vol++; } return ;
}
void downVolume(int& vol) //만약 볼륨이 0초과이면 현재볼륨을 1씩 감소함
{ if(vol > 0) { vol—; } return ;
}
void nextSong(int mode, int& curnum, int max) //다음노래를 선택하기
{ if(mode 0) //순차일때 노래번호가 최대치가 아니면 노래번호에 1을 추가, 최대치면 1번노래로 돌아감 { if(curnum < max) { curnum++; } else { curnum=1; } } else if(mode 1) //랜덤일때 다음곡은 랜덤함수를 거치고 나오는 결과값으로 재생 { curnum = (curnum*curnum*2+1)%max+1; //랜덤은 나중에 구현 } return ;
}
void prevSong(int mode, int& curnum, int max)
{ if(mode 0) //순차일때 노래번호가 1번이 이나면 노래번호에 1을 차감, 최소치면 젤 마지막곡으로 돌아감 { if(curnum > 1) { curnum--; } else { curnum=max; } } else if(mode 1) //랜덤일때 이전곡은 랜덤함수를 거치고 나오는 결과값으로 재생 { curnum = (curnum*curnum*2+1)%max+1; //랜덤은 나중에 구현 } return ;
}
int ffSong(int& cursong, int cursongmax) //기본으로 노래시간에 10초를 추가하고 만약 최대치보다 노래시간이 커지면 다음곡으로 넘어감
{ cursong += 10;
if(cursong > cursongmax) { return 1; }
return 0;
}
void rewSong(int& cursong) //기본으로 노래시간에 10초를 차감하고 만약 0보다 노래시간이 작아지면 0으로
{ cursong -= 10;
if(cursong < 0) { cursong = 0; } return ;
}
void changeSong(int num, string name, int time, int& curnum, string& curname, int& curtime, int& maxtime)
{ curnum = num; curname = name; maxtime = time; curtime = 0;
return ;
}
int selectOnList()
{ int sel; cout << "노래 선택 : "; cin >> sel;
return sel;
}
main함수가 있는 cpp엔
#include <iostream>
#include <string>
#include "mp3function.cpp"
#include "mp3header.h"
using namespace std;
int main()
{ int song1Num = 1; //1번곡 번호 int song1Time = 230; //1번곡 시간 int song2Num = 2; //2번곡 번호 int song2Time = 210; //2번곡 시간 int song3Num = 3; //3번곡 번호 int song3Time = 250; //3번곡 시간 int curMaxList = 3; //현재 목록의 노래 갯수 int curSongNum = song1Num; // 현재 재생중인 노래 순번 int curSongMax = song1Time; //현재 노래가 끝나는 시간 int curSongTime = 0; //현재 노래를 재생한 시간 int curPlayMode = 0; //재생모드 – 0:순차 1:랜덤 2:한곡 int curVol = 10; //현재볼륨은 10 , 볼륨범위 0~20 int onPlay = 0; //노래가 재생중인지 아닌지 저장 int onList = 0; //목록을 보고있는지 아닌지 저장 int btn; //기능을 정해주는 입력번호 int selonlist; //노래를 선택
string song1Name("발레니노 – 리쌍"); //1번 노래 제목 string song2Name("Fly – 에픽하이"); //2번 노래 제목 string song3Name("광대 – 리쌍"); //3번 모래 제목 string curSongName(song1Name); //현재 재생 중인 노래 제목
do ///////////////////////////// "기본 mp3 재생상황을 화면에 나타냄" { cout << "———————————————————" << endl; cout << "곡명 : " << curSongNum << ". " << curSongName << " " << (onPlay ? "♬재생중" : "■일시정지") << endl; cout << " " << curSongTime/60 << " : " << curSongTime%60 << endl;
if (curPlayMode 0) //재생모드가 0이면 순차재생 { cout <<" 순차재생 "; } else if (curPlayMode 1) // 재생모드가 1이면 랜덤재생 { cout <<" 랜덤재생 "; } else //재생모드가 그 밖의 수이면 한곡재생 { cout <<" 한곡재생 "; } cout << " vol : " << curVol << endl; //현재볼륨 cout << "———————————————————" << endl << endl;
if (onList) // 만약 목록을 보고있다면 { cout << "현재 노래 목록" << endl; cout << song1Num << ". " << song1Name << " " << song1Time/60 << ":" << song1Time%60 << endl; cout << song2Num << ". " << song2Name << " " << song2Time/60 << ":" << song2Time%60 << endl; cout << song3Num << ". " << song3Name << " " << song3Time/60 << ":" << song3Time%60 << endl << endl; } cout << "1. ▶ 길게 누르기" << endl; cout << "2. ▶ 짧게 누르기" << endl; cout << "3. Volume ▼ " << endl; cout << "4. Volume ▲ " << endl; cout << "5. ▶▶ 길게 누르기" << endl; cout << "6. ▶▶ 짧게 누르기" << endl; cout << "7. ◀◀ 길게 누르기" << endl; cout << "8. ◀◀ 짧게 누르기" << endl; cout << "9. ▤ 리스트" << endl; cout << "버튼 선택 : " ;
cin >> btn; // 기능을 선택입력
switch (btn) { case 1:///////////////// "1. ▶ 길게 누르기" cout << "*********** mp3를 종료합니다 ***********" << endl; break; case 2:///////////////// "2. ▶ 짧게 누르기" if (onList) { } else { onPlay = !onPlay; } break; case 3://////////////// "3. Volume ▼ " downVolume(curVol); break;
case 4: //////////////// "4. Volume ▲ " upVolume(curVol); break; case 5: /////////////// "5. ▶▶ 길게 누르기" if(ffSong(curSongTime, curSongMax)) // ffSong에서 return 1일때 if안의 기능들 사용 { nextSong(curPlayMode, curSongNum, curMaxList); // 다음곡으로 넘어가기
if(curSongNum 1) { changeSong(song1Num, song1Name, song1Time,curSongNum, curSongName, curSongTime, curSongMax); } else if(curSongNum 2) { changeSong(song2Num, song2Name, song2Time,curSongNum, curSongName, curSongTime, curSongMax); } else if(curSongNum 3) { changeSong(song3Num, song3Name, song3Time,curSongNum, curSongName, curSongTime, curSongMax); } } break; case 6: ////////////// "6. ▶▶ 짧게 누르기" nextSong(curPlayMode, curSongNum, curMaxList); // 다음곡으로 넘어가기 if(curSongNum 1) { changeSong(song1Num, song1Name, song1Time,curSongNum, curSongName, curSongTime, curSongMax); } else if(curSongNum 2) { changeSong(song2Num, song2Name, song2Time,curSongNum, curSongName, curSongTime, curSongMax); } else if(curSongNum 3) { changeSong(song3Num, song3Name, song3Time,curSongNum, curSongName, curSongTime, curSongMax); } break;
case 7: ////////////// "7. ◀◀ 길게 누르기" rewSong(curSongTime); break;
case 8: ////////////// "8. ◀◀ 짧게 누르기" prevSong(curPlayMode, curSongNum, curMaxList);
if(curSongNum 1) { changeSong(song1Num, song1Name, song1Time,curSongNum, curSongName, curSongTime, curSongMax); } else if(curSongNum 2) { changeSong(song2Num, song2Name, song2Time,curSongNum, curSongName, curSongTime, curSongMax); } else if(curSongNum 3) { changeSong(song3Num, song3Name, song3Time,curSongNum, curSongName, curSongTime, curSongMax); } break; case 9: ////////////// "9. ▤ 리스트" if(onList) { selonlist = selectOnList(); if(selonlist 1) { changeSong(song1Num, song1Name, song1Time,curSongNum, curSongName, curSongTime, curSongMax); } else if(selonlist 2) { changeSong(song2Num, song2Name, song2Time,curSongNum, curSongName, curSongTime, curSongMax); } else if(selonlist 3) { changeSong(song3Num, song3Name, song3Time,curSongNum, curSongName, curSongTime, curSongMax); } }
onList = !onList; break; } } while(btn != 1);
return 0;
}
라고 했는데 어딜 고치면 되는지 갈켜주세요 ㅠㅠ
첨부도 해놓겟습니다 빠른 답변 부탁합니다 ㅠㅠ
Forums:
댓글 달기