Dynamická alokace paměti v jazyce C: Porovnání verzí

Z Milan Kerslager
Přejít na: navigace, hledání
m (+kat)
m (Fix)
 
Řádka 8: Řádka 8:
 
   char *buffer;
 
   char *buffer;
 
   buffer=malloc(MAXBUFF+1);
 
   buffer=malloc(MAXBUFF+1);
  if (buffer == NULL) {
+
  if (buffer == NULL) {
 
     printf("Nelze alokovat pamet\n");
 
     printf("Nelze alokovat pamet\n");
 
     return 1;
 
     return 1;

Aktuální verze z 21. 4. 2009, 08:47

#include <stdio.h>

#define MAXBUFF 10

int main()
{
  char *buffer;
  buffer=malloc(MAXBUFF+1);
  if (buffer == NULL) {
    printf("Nelze alokovat pamet\n");
    return 1;
  }
  fgets(buffer,MAXBUFF,stdin);
  puts(buffer);
  return 0;
}

Cvičení

Příklad 1
Napište program, který pro každý řádek na vstupu bude alokovat a následně uvolňovat buffer o velikosti podle délky vstupního řádku.