Apua verkko-ohjelmointiin ?

verkkoja

Hei !

Aloitin verkko-ohjelmoinnin opettelun juuri linuxilla....
Miten saadaan C:llä koodattua client-server tyyppinen
chat niin että molemmat (sekä client etttä server) ovat samaa
tiedostoa eikä erilliset tiedostot clientillä ja serverillä.

Vähän sekavasti muotoiltu kysymys mutta asia kait tuli esille.

6

260

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • ex C-koodari

      Googlella löytyy älyttömän paljon esimerkkejä esim. Hakusanoilla
      C socket programming linux. Msdn:sta löytyy myös esimerkkejä natiivista soketti
      pohjaisesta ohjelmoinnista, tosin kyllä wintoosalle mutta lähes samoja funktioita kuin linukassa ainakin pienellä googletuksella vastaavuden luulisi löytyvän nopeasti.

      • verkkoja

        Tässä on nyt tullut googleteltua mutta pääosin esimerkit ovat aina kahtena tiedostona tyyliin client.c ja server.c Vastaavasti tahtoisin nähdä esimerkki toteutuksen miten luodaan client-server tyyppinen toteutus niin että molemmat voidaan käynnistää samasta samasta tiedostosta tyyliin ClientServer.c

        Itsellä kun ei taito vielä riitä...


      • verkkoja
        verkkoja kirjoitti:

        Tässä on nyt tullut googleteltua mutta pääosin esimerkit ovat aina kahtena tiedostona tyyliin client.c ja server.c Vastaavasti tahtoisin nähdä esimerkki toteutuksen miten luodaan client-server tyyppinen toteutus niin että molemmat voidaan käynnistää samasta samasta tiedostosta tyyliin ClientServer.c

        Itsellä kun ei taito vielä riitä...

        Täsmennyksenä edelliseen...eli miten koodataan tällaista

        Serverin käynnistys: clientserver -p (port)
        Clientin käynnistys: clientserver -h (serveraddress) -p (port)

        jotta molemmat toimisivat yhdestä tiedostosta ClientServer.c


      • ITiootti
        verkkoja kirjoitti:

        Täsmennyksenä edelliseen...eli miten koodataan tällaista

        Serverin käynnistys: clientserver -p (port)
        Clientin käynnistys: clientserver -h (serveraddress) -p (port)

        jotta molemmat toimisivat yhdestä tiedostosta ClientServer.c

        #include "server.h"
        #include "client.h"

        int main(char **arg, int arc){

        if(arc==3)serverMain(arg, arc);
        else if(arc==5)clientMain(arg, arc);
        else return -666;
        return 0;

        }


      • verkkoja
        ITiootti kirjoitti:

        #include "server.h"
        #include "client.h"

        int main(char **arg, int arc){

        if(arc==3)serverMain(arg, arc);
        else if(arc==5)clientMain(arg, arc);
        else return -666;
        return 0;

        }

        Mitä tuo edellinen määrittely niinku tarkalleen tekee ??


      • asdasdasdasd2
        verkkoja kirjoitti:

        Mitä tuo edellinen määrittely niinku tarkalleen tekee ??

        1. Parseta komentoriviargumentit
        2. Riippuen argumenteista käynnistä client tai palvelinaliohjelma
        3. ????
        4. Profit!

        ps. huoh tätä suomi24 ;) Nimimerkki asdasdasdasd on jo varattu. Valitse toinen nimimerkki.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Tällä kertaa Marinia kadehtii Minäminä Päivärinta

      Kokoomuksen tyhjäntoimittelija itkeä tuhertaa, kun kansainvälinen superstaramme ei leiki hänen kanssaan. Oikean puoluee
      Maailman menoa
      392
      1545
    2. Minua itkettää tämä tilanne

      Meidän pitäisi jutella. Eikö niin? Miehelle.
      Ikävä
      105
      1288
    3. Miksi koulut pakottavat

      Lapset uimaan sekaryhmänä? Murrosikäiset tunnetusti häpeilevät vartalossa tapahtuvia muutoksia. Tulee turhia poissaoloja
      Maailman menoa
      116
      1230
    4. Miksi jollain jää "talvi päälle"

      Huvittaa kastoa ullkona jotain vahempaa äijää joka pukeutuu edelleen kun olisi +5 astetta lämmittä vaikka on helle keli
      Maailman menoa
      165
      1155
    5. Mitkä oli suurimmat

      Syyt mihin hänessä ihastuit alussa ja pikkuhiljaa tunteiden edetessä
      Ikävä
      44
      997
    6. Minulla oli tunteita

      Tein itsestäni pellen. Sait hyvät naurut ja minä 💔
      Ikävä
      63
      906
    7. Se katse silloin

      Oli hetki, jolloin katseemme kohtasivat. Oli talvi vielä. Kerta toisensa jälkeen palaan tuohon jaettuun katseeseen. Tunt
      Ikävä
      32
      826
    8. Susanne Päivärinta kirjassaan: Sannalla nousi valta päähän, Big Time!

      Päivärinta toteaa ettei ole nähnyt kenenkään muuttuvan niin totaalisesti kuin Marinin, eikä siis todellakaan parempaan s
      Maailman menoa
      91
      814
    9. Suomen Pallolitto: Tasoryhmät lasten jalkapallossa - Erätauko-tilaisuus ma 20.5.2024

      Tasoryhmät lasten ja nuorten jalkapallossa herättävät paljon keskustelua. Mitä tasoryhmät ovat ja mikä on niiden tarkoit
      Suomi24 Blogi ★
      0
      810
    10. Tuhdit oluet kauppoihin. Miksi vastustaa?

      8% oluet kauppoihin mutta mikä siinä on että osa politikoista vstustaa ? Kauppa kuitenkin hinnoittelee vahvan oluen ni
      Maailman menoa
      170
      709
    Aihe