
paulo1205
(usa Ubuntu)
Enviado em 04/10/2015 - 20:23h
C tem filosofia e propósito diferentes de Fortran. Veja, por exemplo, que enquanto Fortran usa comandos para fazer entrada e saída de dados, C não tem qualquer comando para tanto, confiando tais operações, quando necessárias, a funções da biblioteca.
Um dos objetivos de C é permitir criar bibliotecas com facilidade. Sem entrar no mérito de comparar tal objetivo declarado com o que se consegue fazer em Fortran -- até porque eu não conheço Fortran o suficiente para fazer uma comparação justa --, é muito simples criar uma função que escreva um array numa forma semelhante à que você mostrou para Fortran.
/*
Função para imprimir array unidimensional de inteiros.
Note que a função inclui tratamento de erros.
*/
int printarray1d(int array[], int array_size){
if(array_size>0){
if(printf("%d", array[0])<0)
return EOF;
for(size_t i=1; i<array_size; i++)
if(printf(" %d", array[i])<0)
return EOF;
}
return (int)array_size;
}
Se você garantir que vai usar a função sempre com arrays (e não com ponteiros que apenas casualmente apontem para um array), pode até criar uma macro que dispense a especificação explícita de segundo parâmetro.
/* A macro abaixo calcula o número de elementos do array a partir do seu nome. */
#define prtarr1d(arr) printarray1d(arr, sizeof arr/sizeof arr[0])