Как набирать элементы приведения огромного массива, инициализированного числами - PullRequest
2 голосов
/ 17 июня 2011

У меня есть сторонний код C, который имеет большие массивы типа float, инициализированные числами с плавающей запятой.Пример:

float myArray[] = {1.2, 2.5, ....}; /*has thousands of elements*/

Когда я компилирую, я получаю предупреждение «усечение от двойного до плавающего».Я хотел бы избавиться от этого предупреждения.Если бы размер массива был мал (например, два), я мог бы использовать стандартное приведение типов и вручную обновить код следующим образом:

float myArray[] = {1.2f, 2.5f};

или

float myArray[] = {(float) 1.2, (float) (2.5)};

Однако из-за большогоколичество элементов, обновление вручную нецелесообразно.Нужно ли писать скрипт, который редактирует исходный код и ставит «f» после чисел, или есть более простой способ приведения типов к целому массиву всего одним приведением?Пример:

float myArray[] = (float){1.2, 2.5, ...} /*does not work, issues syntax error*/

1 Ответ

2 голосов
/ 17 июня 2011

Найдите текстовый редактор с поиском и заменой, такой как MS notepad, затем попросите его заменить каждое вхождение строки "," на "f,".

...