Nie wiem czy dokładnie tak mam nazwać ten problem natomiast spotykam się z nim którychś raz i nie mogę wszystkich problematycznych programów nie pisać w C tylko w C++ bo nie umiem sobie poradzić...
Mianowicie chodzi o zadania ze stringami. Jak zadeklarować tablicę stringów w C? Chodzi o zadeklarowanie tablicy n stringów o maksymalnej długości 20 (ergo tworzymy macierz char(n) x char(21) ) - jak to zrobić?
Do tego czy jest jakichś magiczny sposób by posługiwać się tym wspaniałym tworem jak wskaźnikiem na stringi, czy muszę traktować to jako macierz char'ow...?
Zadanie, które miałem wykonać z odpowiedzią w C++: link
Pytam, ponieważ napisałem coś wydaje mi się podobnego (przynajmniej w założeniu), lecz totalnie nie chce działać... Załączam pod spodem kod
#include<stdio.h>
#include<string.h>
#define nickSize 21
int main()
{
char **tab;
char seekFor[nickSize];
int i,n,count;
count=0;
scanf("%d",&n);
tab=(char**)calloc(n,sizeof(char*));
for( i=0;i<n;i++ )
{
tab[i]=(char*)calloc(nickSize,sizeof(char));
}
for( i=0;i<n;i++ )
{
scanf("%s",tab[i]);
}
scanf("%s",seekFor);
for( i=0;i<n;i++ )
{
if(tab[i]==seekFor)
{
count++;
}
}
printf("%d",count);
for( i=0;i<n;i++ )
{
free(tab[i]);
}
free(tab);
return 0;
}