CBLC II - Aula II - Discussões #9

Open
opened 2025-05-19 08:26:18 -03:00 by Ghost · 0 comments

O Retorno de Funções

Questão: O sistema operacional entente que o return 0 de uma função, significa que ela foi executada de forma bem sucedida? Toda função da stdio.h retorna 0? Existem outros valores que indicam erros ao sistema operacional, ou qualquer valor diferente de 0 serve? Análise: Nem todas as funções da stdio.h retornam 0 para sucesso. Algumas retornam valores não-zero para sucesso (como printf() que retorna o número de caracteres impressos). Valores de erro são específicos para cada função. Por convenção, para a função main(), 0 significa sucesso e qualquer valor não-zero (tipicamente entre 1-255) indica um erro ou término anormal.

Ordem dos Especificadores

Questão: Em printf("%d^2 = %d\n", num, quadrado(num)); a ordem dos especificadores importa? Análise: Sim, o primeiro especificador, corresponde ao primeiro argumento.

Alocação de Espaço

Questão: Posso substituir um int pelo tipo char para usar apenas 1 byte de memória? Análise: Sim.

Geral

Questão: int main pode ser char main? Análise: Está nas especificações da linguagem que a main tem que retornar um inteiro.

Questão: Existe alguma diferença entre usar chaves simples ou usar chaves duplas? Análise: Por convenção, aspas duplas definem uma cadeia de caractere, aspas simples define um único caractere.

Questão: Qual a vantagem de usar uma constante simbólica ao invés de uma variável? Análise: Pela necessidade de não utilizar números mágicos.

Questão: Constante simbólica ocupa mais memória? Análise: Na verdade, ela não fica alocado como um variável no espaço de memória.

### O Retorno de Funções **Questão**: O sistema operacional entente que o ```return 0``` de uma função, significa que ela foi executada de forma bem sucedida? Toda função da ```stdio.h``` retorna 0? Existem outros valores que indicam erros ao sistema operacional, ou qualquer valor diferente de 0 serve? **Análise**: Nem todas as funções da ```stdio.h``` retornam 0 para sucesso. Algumas retornam valores não-zero para sucesso (como ```printf()``` que retorna o número de caracteres impressos). Valores de erro são específicos para cada função. Por convenção, para a função ```main()```, 0 significa sucesso e qualquer valor não-zero (tipicamente entre 1-255) indica um erro ou término anormal. ### Ordem dos Especificadores **Questão**: Em ``` printf("%d^2 = %d\n", num, quadrado(num));``` a ordem dos especificadores importa? **Análise**: Sim, o primeiro especificador, corresponde ao primeiro argumento. ### Alocação de Espaço **Questão**: Posso substituir um ```int``` pelo tipo ```char``` para usar apenas 1 _byte_ de memória? **Análise**: Sim. ### Geral **Questão**: ```int main``` pode ser ```char main```? **Análise**: Está nas especificações da linguagem que a ```main``` tem que retornar um inteiro. **Questão**: Existe alguma diferença entre usar chaves simples ou usar chaves duplas? **Análise**: Por convenção, aspas duplas definem uma cadeia de caractere, aspas simples define um único caractere. **Questão**: Qual a vantagem de usar uma constante simbólica ao invés de uma variável? **Análise**: Pela necessidade de não utilizar números mágicos. **Questão**: Constante simbólica ocupa mais memória? **Análise**: Na verdade, ela não fica alocado como um variável no espaço de memória.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: blau_araujo/cblc#9
No description provided.