맨 아래 for문에서 for (i = 0; i < 3; i++) { printf("%s %d %s\n",n[i].name, n[i].age, n[i].sex); } 조건을 3이 아니라 데이터베이스에 있는 저장된 데이터만큼 불러오게 조건식을 만들고 싶은데 어떻게 해야 하나요? sizeof(n), sizeof(n[i])이런거 다 해봤는데 안되더라구요...
클라이언트 코드만 있군요. 서버는 어딨죠?
데이터베이스에 저장된 데이터가 몇 개가 있는지는 서버만이 알겠죠. 클라이언트가 그 정보를 알려면 서버가 알려 줘야 합니다. 어떻게 알려주는지는 protocol에 따라 다르겠지요.
recv는 실제로 전송받은 데이터의 바이트 수를 반환하니 그걸 sizeof(struct list)으로 나눠서 몇 개의 list를 받았나 알 수도 있지만, 별로 권장하지 않습니다. 서버가 데이터를 얼마나 보내든 recv 한 번에 모두 받아올 수 있다는 보장이 없거든요.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
클라이언트 코드만 있군요. 서버는 어딨죠?
클라이언트 코드만 있군요. 서버는 어딨죠?
데이터베이스에 저장된 데이터가 몇 개가 있는지는 서버만이 알겠죠. 클라이언트가 그 정보를 알려면 서버가 알려 줘야 합니다. 어떻게 알려주는지는 protocol에 따라 다르겠지요.
recv는 실제로 전송받은 데이터의 바이트 수를 반환하니 그걸 sizeof(struct list)으로 나눠서 몇 개의 list를 받았나 알 수도 있지만, 별로 권장하지 않습니다. 서버가 데이터를 얼마나 보내든 recv 한 번에 모두 받아올 수 있다는 보장이 없거든요.
댓글 달기