Значения плавающие как индекс в Массиве в C++

Плавание может оценить использоваться в качестве индекса массива? Что произойдет, если выражение, используемое в качестве индекса, закончилось к значению плавающему?

7
задан unwind 22 February 2010 в 12:40
поделиться

4 ответа

Значение с плавающей запятой будет преобразовано в int (оно может выдавать предупреждение или ошибку в зависимости от уровня предупреждения компилятора)

s1 = q[12.2]; // same as q[12]
s2 = q[12.999999]; // same as q[12]
s3 = q[12.1/6.2]; // same as q[1]
10
ответ дан 6 December 2019 в 08:14
поделиться

Да. Но это бессмысленно. Значение с плавающей запятой будет усечено до целого числа.

(Однако вы можете использовать std :: map , но в большинстве случаев вы упускаете предполагаемые значения из-за неточности.)

9
ответ дан 6 December 2019 в 08:14
поделиться

Он будет преобразован в int.

1
ответ дан 6 December 2019 в 08:14
поделиться

Массив C ++ - это непрерывная последовательность ячеек памяти. a [x] означает «x-я ячейка памяти после той, на которую указывает a ».

Что означало бы получить доступ к 12,4-му объекту в последовательности?

2
ответ дан 6 December 2019 в 08:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: