Si è molto complicato per la connessione a internet! Pensaci:
È possibile che il computer disponga di più modalità di connessione: WLAN, Bluetooth, Ethernet, ecc. Ognuno di questi ha le proprie impostazioni, che è necessario impostare. Sei fortunato che ci siano già standard e driver per questi ... usare questi potrebbe essere molto più difficile di quanto non lo sia già adesso.
Gli indirizzi IP possono essere IPv4 o IPv6 e devi essere in grado di gestirli entrambi.
Potrebbero esserci o meno proxy configurati per il sistema.
Devi supportare FTP, HTTP o qualche altro protocollo.
Potrebbe essere necessario utilizzare la connessione remota, quindi è necessario specificare una rubrica con password e numeri di telefono, se non si è già connessi. Idem con nomi utente / password WLAN.
Potrebbe essere necessario lavorare con i cookie.
Il sistema potrebbe memorizzare alcuni dati nella cache, quindi vuoi usare la cache o no?
e l'elenco potrebbe continuare all'infinito.
Quindi il fatto che sia facile eseguirli con Python significa necessariamente che molti di questi sono nascosti da te (o difficili da impostare), quindi scambi la semplicità con il potere. La libreria C è l'opposto: ha tutta la potenza di cui hai bisogno (puoi facilmente eseguire chiamate di sistema), ma non ha alcun valore predefinito (o, in effetti, alcuna funzionalità per la connessione a Internet).
Invece di pensare a C come noioso, pensalo come potente. Ma in ogni caso, non provare a collegarti a Internet con esso: è una cosa davvero difficile da fare. Invece, inizia a imparare come utilizzare la libreria per attività più basilari (ad es. I / O di file), scopri come funzionano realmente i puntatori e le matrici e quando impari tutte quelle, quindi prova ad affrontare grandi progetti. Python apprezzerai anche di più in questo modo. :)
Modifica :
Personalmente suggerisco che, se hai tempo libero, impari prima C #. Non appena ti senti a tuo agio con esso, inizia a conoscere la unsafe
parola chiave e come utilizzare i puntatori e fare il marshalling in C #. Avrai ancora una libreria davvero grande con cui lavorare, come con Python, ma sarai in grado di fare molte cose che puoi fare in C. Quindi passa alle API di sistema di chiamata manualmente (come InternetOpen ) e impara come farli funzionare. Avrai ancora molta flessibilità, ma avrai un'ottima introduzione ai concetti di livello inferiore. Dopo aver fatto questi, allora inizia ad imparare C - poi scoprirai che è un gioco da ragazzi e vedrai (C? capito?) i vantaggi e gli svantaggi delle lingue di alto livello e basso livello, e sarai in grado per trovare quello più adatto alle tue esigenze.
Detto questo, penso che A Crash Course in C potrebbe essere utile come punto di partenza per tuffarsi nel mare C.