Witam,
Mam w bazie danych pola:
id numer
1 1555
2 1666
3 1777
Wykonuję zapytanie:
...
char bufor[100];
char *tablica[10];
i = -1;
...
if (mysql_query(conn, "SELECT `numer` FROM `baza` WHERE 1"))
{
fprintf(stderr, "%s\n", mysql_error(conn));
exit(1);
}
res = mysql_use_result(conn);
while ((row = mysql_fetch_row(res)) != NULL)
{
sprintf(bufor, "%s", row[0]);
tablica[++i]= bufor;
}
...
Próbowałem inne sposoby ale jakoś nie bardzo wiem jak to ugryźć więc wymyśliłem aby zrobić tablicę wskaźników i stringi(tutaj akurat numery zapisuję jako stringi) które są zapisywane w funkcji sprintf do bufora, przypisywać po kolei do wskaźników w tablicy. Natomiast niezbyt mi to wyszło ponieważ jak później wypisuję sobie tablicę:
for(i = 0; i < 3; ++i)
printf("%s\n", tablica[i]);
to dostaję:
1777
1777
1777
Dlaczego we wszystkich (tutaj akurat 3) elementach tablicy wylądowały te same numery?