-1
私はsometingをテストしていましたが、浮動小数点型のベクトルを作成し、そのベクトルに1/iの値を入れましたが、値を読み取っている間は出力は浮動小数点ではなく整数として出力されます。pushing_backがベクトルに浮動すると、ゼロになるのはなぜですか?
#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;
}
この問題は何ですか?それはイテレータと関連していますか?私はそれらをあまり経験していないことを意味します。
iが整数型である '1/i'は、**整数演算**です。 –
'1'は' int'、 'i'は' int'なので '1/i'は' int'です。 – tkausl
@AditiRawatああ、そうです。指摘してくれてありがとう。 – onurcanbektas