문자열 변수를 정수 또는 부동/double로 변환하는 데 사용되는 c_str()
, atoi
및 atof
함수를 사용하고 있습니다. 예를 들어 ,c_str(), atoi 및 atof 함수에 <cstring> 및 <stdlib.h>을 포함해야합니까?
val = atoi(val1.c_str());
val = atof(val1.c_str());
그래서, 내가 포함해야하고 있는지 알고 싶습니다. 감사합니다. .
문자열 변수를 정수 또는 부동/double로 변환하는 데 사용되는 c_str()
, atoi
및 atof
함수를 사용하고 있습니다. 예를 들어 ,c_str(), atoi 및 atof 함수에 <cstring> 및 <stdlib.h>을 포함해야합니까?
val = atoi(val1.c_str());
val = atof(val1.c_str());
그래서, 내가 포함해야하고 있는지 알고 싶습니다. 감사합니다. .
그 중 어떤 것도 헤더가 필요하지 않습니다. <cstring>
. c_str()
함수는 <string>
이 필요하고 <cstdlib>
(<stdlib.h>
헤더의 C++ 버전)을 포함하면 std::atoi
및 std::atof
을 사용할 수 있습니다.
또한, 사이트 cplusplus.com은 아마 cppreference.com
거의 :'atoi'와'atof'는'cstdlib'에있는 것이 보장되지 않습니다. 보장되는 것은 당신이'std :: atoi'와'std :: atof'를 얻는 것입니다. 'atoi'와'atof'는 모두'stdlib.h '에 들어 있습니다. – juanchopanza
@juanchopanza 둘 다요? 확실하게 비''std' 버전을 의미합니다. –
@JosephMansfield 나는 atoi와 atof를 모두 의미했습니다. 댓글을 수정했습니다. – juanchopanza
'atoi'를 사용해야합니다, 반드시 가장 좋은 참조하지 않고 친구 stdlib.h' '에 있습니다. 'c_str()'은'std :: string'의 멤버 함수로'string' 헤더에 있습니다. 여기에서 검색하여 정보를 얻을 수 있습니다 : http://en.cppreference.com/w/ – juanchopanza
두 가지 가능성이 있습니다 : 컴파일러 경고가 변경 될 때까지 용의자를 포함 시키거나 juanchopanza가 언급 한대로 설명을 읽으십시오. – harper
다운 voters downvote거야. – Korchkidu