我将值分配给状态数组,如下所示:
status [i] + = 1;
我想从fortran访问这个数组
如何访问这个数组?
例如,我想从fortran更改STAT的值,如下所示:
STAT(2)= 3
这可能吗?
c来源
#include <stdio.h>
#include <stdlib.h>
#include <sys/shm.h>
#include <sys/stat.h>
void call_fc_ (int *key, int *addr, int *size, int *status)
{
int i;
int shmid;
void* shared_addr;
//printf("first ptr = %p\n", *addr);
shmid = shmget (*key, *size, IPC_CREAT | IPC_EXCL | 0666);
if (shmid == -1)
{
printf("shmget is failed!\n");
exit(0);
}
shared_addr = (void*) shmat(shmid, 0, 0);
status = (int*)shared_addr;
//printf("status ptr = %p\n", status);
int data_size = …Run Code Online (Sandbox Code Playgroud)