2
respostas

Procedure Linguagem C

Olá, bom dia!

Tenho uma dúvida: a linguagem C possui procedure ou não? A questão que, em outras linguagens, como Delphi, a declaração de um procedure não retorna nenhum valor.

int soma(int a, int b){ int total = a + b; }

int main(){ soma(9,10); }

O exemplo acima seria um procedure ou função? Por mais que não retorne nenhum conteúdo armazenado em um endereço de memória, int soma() retorna um valor inteiro. O procedure é um procedimento que não retorna nenhum valor, porém, no caso acima, retorna um valor inteiro.

Isso seria um procedure?

soma (int a, int b){}

Aguardo retorno.

2 respostas

Em Delphi seria uma procedure

Na programação C, não existe está distinção. Tudo é função

De acordo com essa definição que vc deu, de que uma procedure não retorna valor, a opção que vc tem é definir o tipo de retorno como void, desta forma a função não retorna nenhum valor e, pela sua definição, é uma procedure.

Por exemplo:

void imprime(int v) { 
    printf("%d\n", v );
}

definir uma função sem declarar o tipo de retorno (como vc sugeriu na pergunta) é um erro de sintaxe.