Narzędzia użytkownika

Narzędzia witryny


sk2:sockets_full

Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
sk2:sockets_full [2025/10/09 23:46]
jkonczak
sk2:sockets_full [2025/10/16 22:26] (aktualna)
jkonczak
Linia 48: Linia 48:
 Funkcja ''​accept''​ (podobnie jak wprowadzana za chwilę ''​recvfrom''​) może przekazać informację o adresie z którego nawiązano połączenie. W tym celu należy jej podać: Funkcja ''​accept''​ (podobnie jak wprowadzana za chwilę ''​recvfrom''​) może przekazać informację o adresie z którego nawiązano połączenie. W tym celu należy jej podać:
   * gdzie ma zapisać ten adres – tj. podać adres struktury sockaddr (drugi argument)   * gdzie ma zapisać ten adres – tj. podać adres struktury sockaddr (drugi argument)
-  * adres zmiennej, która w momencie wywołania ''​accept''​ ma wpisany rozmiar przekazanej struktury (trzeci argument)<​html><​small></​html><​code cpp>+  * adres zmiennej, która w momencie wywołania ''​accept''​ ma wpisany rozmiar przekazanej struktury (trzeci argument)<​html><​small ​style="​user-select:​ none;"></​html><​code cpp>
 sockaddr_in nazwa_zmiennej;​ sockaddr_in nazwa_zmiennej;​
 socklen_t inna_zmienna = sizeof(nazwa_zmiennej);​ socklen_t inna_zmienna = sizeof(nazwa_zmiennej);​
Linia 104: Linia 104:
  
 Tworząc gniazdo UDP należy użyć następujących argumentów:​ Tworząc gniazdo UDP należy użyć następujących argumentów:​
 +<​html><​div style=margin-top:​-1.2em></​div></​html>​
 <code cpp> <code cpp>
 socket(PF_INET,​ SOCK_DGRAM, IPPROTO_UDP) socket(PF_INET,​ SOCK_DGRAM, IPPROTO_UDP)
Linia 111: Linia 112:
 UDP nie nawiązuje połączenia – do odbioru i wysyłania wiadomości należy używać funkcji ''​sendto''​ i ''​recvfrom''​ (lub ''​recv''/''​read'',​ jeśli nie obchodzi nas nadawca). \\ W formie ułatwienia BSD socket API pozwala działać gniazdom UDP w trybie pseudo-połączeniowym - tzn. można wywołać funkcję ''​connect''​ (która ustali adres odbiorcy) i dalej korzystać z ''​send''​ / ''​write''​. UDP nie nawiązuje połączenia – do odbioru i wysyłania wiadomości należy używać funkcji ''​sendto''​ i ''​recvfrom''​ (lub ''​recv''/''​read'',​ jeśli nie obchodzi nas nadawca). \\ W formie ułatwienia BSD socket API pozwala działać gniazdom UDP w trybie pseudo-połączeniowym - tzn. można wywołać funkcję ''​connect''​ (która ustali adres odbiorcy) i dalej korzystać z ''​send''​ / ''​write''​.
  
-Przykład użycia funkcji ''​sendto''​ i ''​recvfrom'':​ <​html><​small></​html><​code cpp>+Przykład użycia funkcji ''​sendto''​ i ''​recvfrom'': ​ 
 +<​html><​div style=margin-top:​-1.2em></​div></​html>​ 
 +<​html><​small ​style="​user-select:​ none;"></​html><​code cpp>
 sockaddr_in nazwa_zmiennej {...}; sockaddr_in nazwa_zmiennej {...};
 socklen_t inna_zmienna = sizeof(nazwa_zmiennej);​ socklen_t inna_zmienna = sizeof(nazwa_zmiennej);​
sk2/sockets_full.1760046377.txt.gz · ostatnio zmienione: 2025/10/09 23:46 (edycja zewnętrzna)