Вопросы по теме 'fortran-iso-c-binding'

Как выделить массив внутри подпрограммы фортрана, вызванной из C
Я думаю, название говорит о том, что мне нужно. Я знаю, что для этого можно использовать функцию "asd", но по некоторым причинам мне нужно сделать выделение на Фортране (т.е. в подпрограмме "asd_"). Вот код C: #include <stdio.h> void...
1627 просмотров

доступ к данным модуля fortran из c с помощью gfortran и gcc
Я пытаюсь получить доступ к переменным модуля в коде fortran, вызывая его из C. Я уже вызываю подпрограмму, но не могу вызвать переменные. module myModule use iso_c_binding implicit none real(C_FLOAT) aa(3) contains subroutine fortranFunction()...
1363 просмотров
schedule 26.03.2022

Передача выделяемого массива из fortran в C и malloc его
Я конвертирую часть кода нашей библиотеки Fortran в C, чтобы у нас наконец были функции C с оболочками Fortran. Мы используем Fortran 95. Каков предпочтительный способ обработки размещаемых массивов? Могу ли я передать выделяемый массив в...
2185 просмотров
schedule 15.08.2022

Фортран - Рабочий процесс Cython
Я хотел бы настроить рабочий процесс для доступа к подпрограммам fortran из Python с использованием Cython на машине Windows после некоторого поиска я нашел: http://www.fortran90.org/src/best-practices.html#interfacing-with-c и...
4495 просмотров

Передача указателя массива из Fortran (вызываемый) в C# (вызывающий)
Я пытаюсь передать массив с плавающей запятой из С# в фортран, и фортран меняет свою ссылку на внутренний (в коде фортрана) массив. Я просто получаю мусор, когда делаю это, хотя все работает нормально. Вот что я делаю: float[] test = new...
369 просмотров

Вызов кода C с данными в памяти из Fortran
У меня есть сложный объект C++, который я хотел бы использовать в своем коде Fortran. В общем, нет проблем с вызовом кода C++ из Fortran (просто нужно предоставить подходящий интерфейс, например, с привязкой к C). Однако моя проблема здесь в том,...
460 просмотров

Как вызвать функцию C в Fortran и правильно передать аргументы uint32_t
Привет, я использую код Fortran 90 для вызова функции C. Поскольку я манипулирую адресами, аргументы функции C должны быть правильно сопоставлены в Fortran. Я использую ifort и icc для компиляции кода и работаю на 64-битной машине. Некоторое...
1218 просмотров
schedule 16.07.2023

Передача массива C-строк в Fortran (iso_c_binding)
Как передать массив строк C ( char* cstrings[] ) в подпрограмму Fortran? Вопрос Массивы строк в мостах fortran-C с использованием iso_c_binding определенно связан с , но ответ кажется неправильным и даже не компилируется с GNU Fortran. В...
2731 просмотров
schedule 16.04.2022

Вызов C из фортрана (ifort, gfortran)
Я программист на C, которому нужно обновить огромную программу на Fortran 2003, добавив единственный вызов функции C. Во-первых, мне нужно написать минимальную оболочку Fortran (в современном Fortran свободной формы, без криков), которая будет...
1186 просмотров
schedule 04.01.2023

Передача двумерного массива из Fortran в C
У меня возникли проблемы с передачей двумерного массива из Fortran в C. Ниже приведена моя функция C, которая просто отображает элементы массива на экране. #include <stdio.h> void print2(double *arr , int *n) { int y = *n; printf("\n...
1254 просмотров
schedule 13.10.2022

Передача выделенного C_PTR в массив Fortran на C
У меня проблемы с segfaults при доступе к массиву в C, который выделен в файле Fortran ниже. Есть несколько артефактов отладки, например, тот факт, что записи в файл не пишут ничего значимого, и я инициализирую переменную i , которую никогда не...
1502 просмотров
schedule 18.07.2023

доступ к переменным модуля fortran из С++
В настоящее время я работаю над проектом, который требует интеграции кода fortran в C++. В модуле fortran объявлено множество переменных и массивов. Я могу получить доступ к типам integer, float и double из c, объявив переменную c как extern double...
1382 просмотров

Как проверить, что fortran real совместим с C float?
Я соединяю некоторый устаревший код между fortran и C, используя привязку iso-c и модули/интерфейсы и т. д. Обычно при передаче массива fortran в C я просто копировал его в другой массив правильного типа iso-c-binding. Однако некоторая часть кода...
753 просмотров
schedule 27.06.2023

Вызов подпрограмм Fortran из кода C
У меня есть один код fortran (gmf.f), который отлично работает, и я хочу вызвать его из c (tropo.c), чтобы использовать выходные данные подпрограммы fortran в моем коде c в качестве новых переменных. subroutine gmf...
680 просмотров

Совместимость C и Fortran для строк
Я пытаюсь вызвать некоторый код Fortran из C, но я не нашел правильного способа передачи массива символов C. SUBROUTINE My_F_Code (c_message) BIND(C, NAME='my_f_code') USE ISO_C_BINDING IMPLICIT NONE CHARACTER*(C_CHAR)...
1449 просмотров
schedule 06.10.2023

Ошибка взаимодействия Fortran 2008 C: более актуальные, чем формальные аргументы при вызове процедуры в (1)
У меня есть этот конкретный вопрос по теме, который был закрыт при попытке вызвать C из простого API libcurl из Фортрана: https://stackoverflow.com/questions/44891188/calling-libcurl-from-fortran-2008 Следуя советам из комментариев, я все еще...
2321 просмотров

Связывание C ++ и Fortran
Я хочу объединить C ++ и Fortran вместе. Мой код Fortran будет использовать функцию C ++, а функция C ++ изменяет переменные Fortran и отправляет их обратно. Функция C ++ построена с использованием других кодов C ++, например. функция C ++ будет...
945 просмотров
schedule 15.03.2023

Смешанное программирование — включение заголовка C++ в Fortran
Я пытаюсь использовать функцию из библиотеки, написанной на С++, в своей программе, написанной на Фортране. Библиотека С++ собрана в одном заголовочном файле, поэтому, если вы хотите использовать ее в другой программе на С++, вам нужно сделать только...
862 просмотров
schedule 28.01.2024

Ошибка Fortran DLL при использовании функции с несколькими переменными
В настоящее время я разрабатываю fortran DLL, и у меня есть проблема с функциями с несколькими переменными. Моя конечная цель состоит в том, чтобы вызывать функции DLL из VBA отлаживать DLL, используя код на фортране, вызывающий функции DLL...
92 просмотров

Интерфейс Fortran to C для массивов и скаляров
Я изучаю, как связать Fortran с C. Я написал простой код C, который устанавливает все значения массива в 1: #include <stdlib.h> void cset( int *array, int size ) { for (size_t i = 0; i < size; i++) { array[i] = 1; } return; }...
222 просмотров