-1
someting을 테스트하는 동안 float 유형의 벡터를 만들고 벡터에 1/i 값을 넣었으나 값을 읽는 동안 출력은 float가 아닌 정수로 출력됩니다.pushing_back이 벡터에 수레 될 때 왜 0이 생깁니 까?
#include <stdio.h>
#include <vector>
#include <iterator>
int main(int argc, char const *argv[])
{
std::vector<float> testVec;
for (int i = 1; i < 5; ++i)
{
float v = 1/i;
testVec.push_back(v);
}
std::vector<float>::iterator it = testVec.begin();
for (; it!=testVec.end(); ++it)
{
printf("The value of the iterator: %f, *it);
}
return 0;
}
그래서이 문제는 무엇입니까? iterator와 관련이 있습니까? 나는 그들과 많은 경험이 없다는 것을 의미한다.
'i'가 정수형 인'1/i'는 ** 정수 연산 **입니다. –
'1'은'int'이고'i'는'int'이므로'1/i'는'int'입니다. – tkausl
@AditiRawat 오, 알았어요. 지적 해 주셔서 고마워요. – onurcanbektas