Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako nastaviť bajtov pre príjem číselných dát pomocou Socket

Zásuvky sú spôsob , ako prenášať dáta pomocou štandardov pre súborový deskriptor Unix . Súbor deskriptora Unix je celé číslo , ktoré je spojené s otvoreným súborom , a umožňuje operačný systém pre prístup . Pod Unix , všetko je súbor , dokonca aj pripojenie k sieti . Zásuvky sú špecializované pre internetovú komunikáciu . Ak používate zásuvky vo vašom programe , musíte nastaviť počet bajtov pre príjem dát . Toto sa nazýva vyrovnávacej pamäti . C + + funkcie " recv ( ) " vám umožňuje nastaviť vyrovnávacej pamäte pre príjem dát zo zásuvky . Veci , ktoré budete potrebovať
C + + integrované vývojové prostredie ( IDE ) , ako je napríklad Eclipse CDT
C + + Compiler , ako GCC
Zobraziť ďalšie inštrukcie Cestuj 1

Založte C + + IDE kliknutím na jeho ikonu programu . Keď sa otvorí , vyberte " File /New /Project " a vyberte " C + + " vytvoriť nový C + + projektu . Prázdny zdrojový kód súboru sa zobrazí v textovom editore časti IDE
2

Pridať nasledujúce dva " patrí " smernice do hornej časti súboru zdrojového kódu : . # Include < sys /typy . h > # include
3

Zoznámte sa s podpisom funkciou pre " recv ( ) . " Položky v zátvorkách sa nazývajú parametre a sú zvyčajne používa ako spôsob zadávania dát do funkcie . Prvý parameter je " int s , " ktorý sa odkazuje na identifikátor celé číslo pre zásuvku , ktorú chcete prijímať dáta z Druhý parameter je ukazovateľ na vyrovnávacej pamäti , ktorá ukladá všetky prijaté dáta , a tretí parameter je dĺžka vyrovnávacej pamäte v bajtoch . Štvrtá a posledná parameter je parameter " flags " , ktoré môžu zmeniť správanie funkcie . Návratový typ pre túto funkciu je " ssize_t , " a vráti počet prijatých bajtov , alebo " 1 " , ak dôjde k chybe .

Ssize_t recv ( int s , void * buf , size_t ľan , int flags ) ;
4

Vytvorte rad " char " dátové typy , ktoré sú zaručene byť aspoň jeden byte dlhý . Presná dĺžka závisí na špecifiká vášho systému , ale všeobecne " char " je jeden bajt , alebo osem bitov dlhé . Napíšte nasledujúce deklarovať pole 256 " char " dátové typy :

char bufferu [ 256 ] ;
5

Vytvoriť premennú , ktorá ukladá počet prijatých bajtov . To je hodnota vrátená funkciou " recv ( ) , " a to je užitočné pre určenie , kedy takmer zaplnenú vyrovnávaciu pamäť , alebo ak došlo k chybe . Napíšte nasledujúce vytvoriť túto premennú :

int dostala = 0 ;
6

Pripojte sa k umiestneniu v sieti pomocou zásuvky . Zásuvka je len číslo , a môže byť vyhlásená ako tohle :

int socket ;
7

Vyvolajte funkciu " recv ) ( " pomocou premennej doteraz deklarované . Ak chcete použiť " recv ( ) " s jeho predvolené správanie , nastavte príznak na " 0 " .

Dostal = recv ( zásuvka , buffer , sizeof ( buffer ) , 0 ) ;
8

Kompilácia a spustenie programu . Program nastaví oblasť v pamäti , a pripravuje sa na príjem dát zo zásuvky . To potom nazýva " recv ( ) " funkcia , ktorá prijíma údaje zo zásuvky .

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené