Jak dodawać znak na koniec stringa?

0

Witam. Mam za zadanie napisać funkcję, która pobierze z wejścia n znaków i umieści je w łańcuchu.
Wstępnie chciałem to zrobić tak:

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

void pobierz(int n, char * tab)
{
  int i = 0;
  char c;

  while(i < n)
  {
    c = getchar();
    tab[i] = c;
    i++;
  }

  tab[i] = '\0';
}

int main()
{
  int ile;
  char *lancuch;

  printf("Wprowadz dane.\n");
  printf("Ile znakow pobrac milordzie?\n");
  scanf("%d", &ile);
  getchar();

  printf("Podaj ciag znakow\n");
  pobierz(ile, lancuch);
  printf("%s\n", lancuch);

  getchar();
  return 0;
}

Jednak program zawiesza się w pętli. Czy istnieją w C jakieś funkcje do łączenia łańcuchów ze znakami?

dodanie znacznika <code class="c"> oraz sformatowanie kodu - @furious programming

1

Formatowanie kodu: http://format.krzaq.cc i używanie <code><code class="c"></code></code>

char *lancuch;

To jest tylko wskaźnik. Pod tym wskaźnikiem nie masz ani tablicy ani zarezerwowanego obszaru pamięci, więc jak chcesz tam wpisywać cokolwiek?

0

No fakt, teraz rozumiem. Dzięki wielkie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1