2013-12-14 2 views
0

나는 dec, hex, oct로 출력과 입력을 실험하는 프로그램을 썼다. 그런 다음이 코드를 모두 지우고 동일한 프로젝트에이 코드를 작성했습니다. 컴파일러는 유효하지 않은 8 진수를 말하는 main()의 전화에 대해 오류를 계속 제공합니다. 그래서 코드를 메모장 ++에 복사 한 다음 다시 시작하여 MS Visual C++ 2010에서 새 프로젝션을 만들고 코드를 다시 붙여 넣었습니다. 그래도 여전히 오류가 발생합니다. 무엇이 문제 일 수 있 었는가 ???왜 컴파일러가 8 진수로 고정되어 있습니까?

//main.cpp****************************************************************************** 
#include "lib.h" 

struct table 
{ 
    table(string firstName, string lastName, long int phone, string email) 
     :firstName(firstName), lastName(lastName), phone(phone), email(email) 
    {} 

string firstName; 
string lastName; 
long int phone; 
string email; 
}; 


//**************************************************************************** 


int main() 
{ 

vector<table> details; 

cout<<dec;//I thought maybe this would convert back to dec 

details.push_back(table("bill","bryson",05289994590, 
    "[email protected]")); 

    keep_window_open(); 

} 

//****************************************************************************** 
+0

누군가의 실제 연락처 정보 인 경우 질문에서 해당 연락처를 수정할 수 있습니다. – mc10

답변

5

문자 적 ​​05289994590 때문에 최고의 0의, 진법 리터럴입니다. 십진법 리터럴을 원하면 전화 번호는 아마도 다른 형태로 저장되어야하지만 5289994590으로 철자를 써야합니다. 문자열.

iostream 라이브러리 형식과 아무 관련이 없습니다. 오히려 이것은 C++ 문법의 일부입니다.

+0

나는 실제 숫자 형식으로 전화 "numbers"를 저장하는 것이 광기에 대한 경로라고 덧붙인다. –

+0

@JoeZ : 네, 저도 그렇게 생각하고있었습니다. –

+0

특히 국제 전화 번호의 첫 문자가'+'이기 때문에 ;-) –

관련 문제