나는 다음과 같은 간단한 일을하기 위해 모든 노력을 다 해왔다 :문자열을 문자 포인터로 변환하려고합니까?
1) stdin으로부터 입력 문자열을 받는다.
2)이 테이블을 char 포인터로 변환하면 테이블/palindrome 찾기 함수로 전달할 수 있습니다.
2 단계의 후반부에는 확신하지만 해킹 할 수없는 형식 계약입니다. 아래 질문은 내 몸입니다. palin 기능의 프로토 타입은 int palin(char *str)
입니다.
int main()
{
string input;
cin >> input;
char seq[] = input.c_str(); //Error here, invalid initialization?
int len = strlen(seq);
int result = palin(seq);
cout << result;
getchar();
return 0;
}
아이디어가 있으십니까? c_str()
변환은 또한 상수 포인터 char을 기대하지만 문제가됩니다. 그러나 char 포인터가 변경됩니다.
문자의 X의 [을 시도 할 수 있습니다 ] 컴파일시 알려진 크기 여야합니다. 또한,'const char *''char *'가 아닌'const char *'를 반환한다. – Creris
만약'palin()'이 단지 문자열을 읽는다면'const char * seq = input.c_str();' *).') 그렇지 않으면 strcpy를 새로운 char 배열로 가져와야 할 것이다. –
위의 제안 된 중복 본 적이 있지만 const char 않습니다 나를 위해 않습니다. 그것은 변경할 수 있어야합니다. –