精华内容
下载资源
问答
  • linux C语言 网络编程教程及源码 一、网络应用层编程 1、Linux网络编程01——网络协议入门 2、Linux网络编程02——无连接和面向连接的区别 3、Linux网络编程03——字节序和地址转换 4、Linux网络编程04——套接字 5...
  • Linux下C语言编程教程

    2012-01-03 20:09:04
    Linux下C语言编程入门教程 目录 ...第八章网络编程 …………………………………………………………………………54 第九章 Linux下 C开发工具介绍 ……………………………………………………….87
  • 个人感觉比较不错的教程 很简洁易懂 着重描述了简单的网络程序设计思路
  • linux C语言编程入门

    2012-09-06 22:16:37
    linux C语言编程入门教程,包括文件,进程,信息处理,网络编程等。
  • c语言socket编程指南

    2008-11-23 15:24:41
    最基本最简单的入门概念级教程 适合初学者 目录: 1) 什么是套接字? 2) Internet 套接字的两种类型 3) 网络理论 4) 结构体 5) 本机转换 6) IP 地址和如何处理它们 7) socket()函数 8) bind()函数 9) ...
  • 分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!    &...

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

    也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                   

    【 声明:版权所有,欢迎转载,请勿用于商业用途。  联系信箱:feixiaoxing @163.com】


        不管在Windows平台下面还是在Linux平台下面,网络编程都是少不了的。在互联网发达的今天,我们的生活基本上已经离不开网络了。我们可以用网络干很多的事情,比如说IM聊天、FTP下载、电子银行、网络购物、在线游戏、电子邮件的收发等等。所以说,对于一个软件的开发者来说,如果说他不会进行网络程序的开发,那真是难以想象的。


        在开始介绍网络编程的方法之前,我们可以回忆一下计算机网络的相关知识。目前为止,我们使用的最多网络协议还是tcp/ip网络。通常来说,我们习惯上称为tcp/ip协议栈。至于协议栈分成几层,有两种说法。一种是五层,一种是七层,我个人本身也比较倾向于五层的划分方法。大家可以通过下面的图看看协议栈是怎么划分的。


        5、应用层
        4、传输层
        3、网络层
        2、数据链路层
        1、物理层


        网络的不同层次实现网络的不同功能。物理层主要实现报文的成帧处理;数据链路层完成对报文的优先级的管理,同时实现二层转发和流量控制;网络层实现路由和转发的功能,一方面它需要实现对报文的fragment处理,另外一方面它还需要对路由信息进行处理和保存;传输层实现报文的发送和接受,它利用计数、时序、定时器、重发等机制实现对报文的准确发送,当然这都是tcp的发送机制,而udp一般是不保证报文正确发送和接收的;应用层就是根据传输层的端口信息调用不同的程序来处理传输的内容,端口8080是http报文,端口21是ftp报文等等。上面的逻辑稍显复杂,朋友们可以这么理解,

        物理层关心的是如何把电气信号变成一段报文;数据链路层关心的是mac地址、vlan、优先级等;网络层关心的是ip地址,下一跳ip;传输层关心的是端口资源;应用层关心的是报文组装、解析、渲染、存储、执行等等。

        目前关于tcp/ip完整协议栈的代码很多,其中我认为写得比较好的还是linux内核/net/ipv4下面的代码。如果朋友们对ipv6的代码感兴趣,也可以看看/net/ipv6的代码。档案如果朋友们对整个协议栈的代码结构理解得不是很清楚,可以参考《linux网络分析与开发》这本书。

        当然,作为应用层,我们的其实考虑的不用这么复杂。对于网络程序编写人员来讲,所有网络的资源只要和一个socket关联在一起就可以了。当然在socket可用之前,我们需要为它配置端口信息和ip地址。配置完了之后,我们就可以慢慢等待报文的收发了。所以一般来说,作为服务器端口的处理流程是这样的,

        a) 创建socket
        b) 绑定socket到特定的ip地址
        c) 对socket进行侦听处理
        d) 接受socket,表明有客户端和服务器连接
        e) 和客户端循环收发报文
        f) 关闭socket


        作为服务器程序而言,它要对特定的端口进行绑定和侦听处理,这样稍显复杂。但是如果是编写客户端的程序,一切的一切就变得非常简单了,

        a) 创建socket
        b) 链接服务器端地址
        c) 和服务器端的socket收发报文


        上面只是对网络编程做了一个基本的介绍,但是好多的东西还是没有涉及到,比如说:(1) 什么时候该使用udp,什么时候该使用tcp?(2) 如何把多线程和网络编程联系在一起? (3) 如何把多进程和网络编程联系在一起? (4) 如何利用select函数、epoll_create机制、非阻塞函数提高socket的并发处理效率? (5) linux内核是怎么实现tcp/ip协议的? (6) 我们自己是否也可以实现协议的处理流程等等?

        关于这些内容,我们会重新开辟一个主题,逐步进行分析和仿真处理。敬请期待。


               

    给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

    这里写图片描述
    展开全文
  • C语言教程之三 C语言

    2010-05-22 02:17:27
    接着上一个发!C语言C语言C语言 如果哪个朋友有C语言网络编程高级资料,请共享下! 谢谢!
  • linux下C语言编程入门

    2008-11-20 22:38:12
    一个初级的linux下C语言编程教程,dpf格式: 一共9章: 1.基础知识 2.进程介绍 3.文件操作 4.时间概念 5.信号处理 6.消息管理 7.线程操作 8.网络编程 9.Linux下C开发工具介绍
  • 教程来自上海交大网络教育学院, 我感觉还行!
  • 113-C语言章节小结 114-优化旋转算法 115-新旋转算法越界检测 ps: 本套课程总共115课,没记错的话,录制过程中有3课左右木有声音,并不是我们不录制声音。 1-50下载地址 链接: ...
    001-VS2008安装
    002-课创建C程序
    003-剖析一个简单的程序
    004-printf函数的参数和控制符
    006-详解整型变量
    007-整型变量和常量
    008-浮点数和浮点数变量
    009-类型间的转换
    010-字符类型char
    011-赋值操作符和数学函数
    012-条件判断和逻辑运算符
    013-条件语句if和获取键盘输入
    014-逻辑运算符和else-if
    015-switch语句
    016-goto语句
    017-for循环语句
    018-while循环
    019-do while循环
    020-循环的嵌套
    021-再谈for循环执行流程
    022-循环中Break和continue
    023-强行中止多层循环
    024-数组及应用
    025-多维数组的初始化和遍历
    026-char数组和字符串文本
    027-字串链接
    028-字串比较
    029-字串查找搜索
    030-字符串转换
    031-指针
    032-指针运算与数组
    033-常量指针
    034-用指针访问多维数组
    035-动态数组,指针与动态分配内存
    036-以多维数组的形式访问动态内存
    037-分配内存及释放内存
    038-实践编写计算器1
    039-计算器2从字串里提取数字
    040-计算器3分离出运算符
    041-计算器4计算结果
    042-计算器5计算结果加减运算
    043-变量作用域和生存周期
    044-函数和参数值传递
    045-用指针作参数和返回值的函数
    046-函数指针和函数指针数组
    047-静态变量
    048-在函数间共享变量
    049-递归
    050-参数数量可变的函数
    051-main函数及命令行参数获取
    052-结束程序的几种方式
    053-时间函数及结构化数据
    054-自定义数据结构及运用
    055-数据结构与双向链表
    056-单向链表的建立与遍历
    057-双向链表的建立与遍历
    058-循环的双向链表及调试监视数据
    059-双链表中搜索结点
    060-双链表中删除结点
    061-认识二叉树
    062-构建二叉树
    063-遍历二叉树
    064-有序二叉树应用
    065-共享内存-联合(union)
    066-定义自己的数据类型typedef
    067-定义函数指针类型typedef
    068-文件的概念
    069-文件的打开关闭
    070-文件的读写操作
    071-在文件中读写字符串
    072格式化文件输入输出
    073-文件重命名与删除
    074-标准流和流的重定向
    075-错误信息和错误处理
    076-读写二进制文件
    077-文件位置相关操作fgetpos和fsetpos
    078-文件位置相关操作ftell和fseek
    079-文件共享打开_fsopen
    080预处理操作#define与extern
    081#define高级应用-多重替换
    082-条件编译
    083-绘制方框
    084-绘制菜单
    085-动态菜单
    086-游戏设计思路
    087-设计棋盘
    088-设计棋子
    089-棋子下落动画实现
    090-用光标控制移动
    091-越界检测
    092更新棋子数据至棋盘
    093底部碰撞检测
    094-左右碰撞检测
    095-多线程临界区
    096-自动下落的棋子
    097-多线程同步问题
    098-速度优化与随机棋子
    099-方块顺时针旋转
    100旋转冲突解决
    101-记分和消掉一行
    102-完善记分
    103-暂停
    104-游戏难度控制
    105-越界BUG修复
    106-添加声音效果
    107-集成音乐到EXE里边
    108-完善游戏A
    109-完善游戏B
    110-游戏结束检测
    111-重新开局
    112-添加棋子缓存功能
    113-C语言章节小结
    114-优化旋转算法
    115-新旋转算法越界检测


    ps: 本套课程总共115课,没记错的话,录制过程中有3课左右木有声音,并不是我们不录制声音。



    1-50下载地址
    链接:http://pan.baidu.com/share/link?shareid=2338815808&uk=1446443900 
    密码: icq9

    51-70下载地址:
    链接: http://pan.baidu.com/share/link?shareid=2811256832&uk=1446443900 
    密码: 8wmn

    71-82下载地址:
    链接: http://pan.baidu.com/share/link?shareid=3167467982&uk=1446443900 
    密码: icvi

    83-115下载地址:
    链接: http://pan.baidu.com/share/link?shareid=456360904&uk=2721496444 
    密码: ja37
    展开全文
  • 非常好的linux平台c语言开发入门教程,由浅入深地讲述了vi的使用,gcc的使用,makefile介绍,进程与线程知识,网络编程,信号处理等知识,word格式.
  • Linux环境下C语言程序的设计过程,C语言编译器 gcc、调试器gdb、工程管理器make的使用,多文件系统、文件操作、标准I /O库、串行通信程序的实现,进程的产生与控制、进程间的通信、Linux的图形编程、网络编程、...

    本书主要内容包括:Linux环境下C语言程序的设计过程,C语言编译器 gcc、调试器gdb、工程管理器make的使用,多文件系统、文件操作、标准I /O库、串行通信程序的实现,进程的产生与控制、进程间的通信、Linux的图形编程、网络编程、数据库编程以及游戏程序的开发方法。
    本书结构合理、概念清楚、由浅入深、实用性强,是一本技能型的教材,适合Linux环境下软件工程技术人员使用,也可以作为软件、计算机等专业本、专科学生的教材。本书是开放源代码高校推进联盟“Linux软件工程师职业技能(c语言)资格”认证考试指定用书。

    图书比价网

    展开全文
  • 编程的入门教程会跟你介绍很多基础知识,之后的就业方向就有编程工程师:作为拥有0-3年编程经验的第二层,可以正式的称呼自己为“编码菜鸟”了。这个阶段达内电脑培训 老师觉得的实训师知道同时也可以熟练的使用CV大...

    编程的入门教程会跟你介绍很多基础知识,之后的就业方向就有编程工程师:作为拥有0-3年编程经验的第二层,可以正式的称呼自己为“编码菜鸟”了。这个阶段达内电脑培训 老师觉得的实训师知道同时也可以熟练的使用CV大法(Control+C、Control+V)来模仿前辈的案例或网络实例进行功能实现了,但也仅仅只能实现需求逻辑而已。这时的他们对编程概念已经有了初步的理解,知道了变量、逻辑与函数的意义。同时因为并不理解这段代码的真实含义,所以实现的这坨代码通常让人烧脑不已,是BUG的高发地。

    编程咨询师:咨询师是一个特殊的存在,如果说架构师是追求于设计之道与艺术之道的苦行僧,那咨询师就是这条道路上的布道家。

    编程研发工程师:作为拥有3-5年编程经验的中间层,进入该层的“攻城狮”们已经开始被委以重任,负责攻城拔寨,调研新型武器,属于团队里面的攻坚小能手、小白与菜鸟所仰望的大牛了。

    编程架构师:作为拥有5-8年编程经验的开发者顶层,进入该层的大师们对于某一领域的系统研究已经“摸得门清”,通常他们是使系统“拔地而起”、“耸入云霄”的设计师。

    广州达内 老师认为他们一般有着广阔的见识与丰富的实战经验,也许他并未开发过多么经典的架构,但经过短暂的观察即可指出对于当前架构的优化意见。更多电脑编程的知识,关注达内培训!

    “就业季”,想要完美转身吗!

    快来达内培训,为你寻一份好工作!

    扫码可进入报名7天超值课程试听机会,并获得课程介绍资料!

    展开全文
  • C语言基础教程(一)

    2020-02-07 22:40:47
    网络上有很多C语言编程环境的配置教程,也有很多开箱即用的安装包,请大家自行摸索,对于学习来讲,微软的Visual Studio足以满足我们的需求。 注意:由于编译器不同,Visual Studio并不完全适合C语言开发,如果您的...
  • C语言深度解析》第9、10章——位操作 /c标准IO、网络编程/线程/链表 ...
  • Linux下C开发: 1,gcc,gdb的使用。 2,Makefile文件的编写。 3,系统函数的使用 ...8,网络编程 9,图形编程 10,数据库编程 11,qt编程 转载于:https://blog.51cto.com/amao99/226207...
  •  14.1.3 IP包头和ICMP报文的C语言描述  14.2 Ping应用程序  14.2.1 程序设计  14.2.2 程序源码  14.3 IP套接字选项  14.3.1 IP_TTL选项  14.3.2 IP_TOS选项  14.3.3 IP_OPTIONS选项 ...
  • Linux网络编程应用:教你如何从阿里云获取天气数据、快递物流数据(HTTP协议、C语言教程链接:https://blog.csdn.net/mbs520/article/details/108536218
  • C语言嵌入式系统编程修炼之道

    千次阅读 2005-07-25 18:53:00
    工具软件 办公软件 操作系统 网络安全 设计在线 程序开发 教程宝典 下载 C语言嵌入式系统编程修炼之道 ⊙技术专题精选嵌入式系统:后PC时代的擎天之柱嵌入式开发导引Palm OS应用程序设计初级教程 J2ME应用...
  • Linux下C语言编程(ZT)

    千次阅读 2004-11-03 16:52:00
    文章来源:网络 Linux的发行版... 本文的主旨是介绍如何在 Linux 下使用 C 编译器和其他 C 编程工具, 而非 C 语言编程教程。 在本文中你将学到以下知识: · 什么是 C · GNU C 编译器 · 用 gdb 来调试GCC应用程序
  • 一些有用的C语言网络资源: 一些值得关注及研究的C语言相关项目: 一些C语言编程时可以使用的工具软件,帮你提高代码质量: C语言编程规范编程标准: C语言编程电子书及教程: 在这里想比较系统的谈谈...
  • 划时代-51单片机C语言全新教程(480多页) 目录 前 言 8 绪 论 10 第一章 8051简介 14 1.1 8051系列单片机的特点 14 1.2 8051系列单片机内部结构 15 1.2.1 微处理器 16 1.2.2 振荡器与CPU时序 18 1.2.3 存储器 18 ...
  • 都是我看过或正要看的书,晾晾书架,希望对后来者也有一点作用,当年我也是浪费时间看了一些没有价值的书籍,颇为后悔,现将精华总结...  3:《TCP/IP协议及网络编程技术》 罗军舟等编着 清华大学出版社 国货上品,
  • TCP IP网络编程

    2019-01-25 09:33:46
    扫描版 超清百度网盘资源!!! 为初学者准备的网络编程! 韩国TCP/IP经典教程!... 本书针对网络编程初学者,面向具备C语言基础的套接字网络编程学习者,适合所有希望学习Linux和Windows网络编程的人。
  • cJSON使用详细教程 | 一个轻量级C语言JSON解析器

    万次阅读 多人点赞 2020-01-01 21:20:24
    它采用完全独立于编程语言的文本格式来存储和表示数据,语法简洁、层次结构清晰,易于人阅读和编写,同时也易于机器解析和生成,有效的提升了网络传输效率。 JSON语法规则 JSON对象是一个无序的"名称/值"键值对的...
  • C语言入门篇 23年C++语言编程经验,经历过多个行业的开发项目包括网络安全...
  • C语言的用途相当多,可以用在数据结构、数据库、网络、嵌入式等方面,历经40多年不衰,真是厉害!...系列教程的文章名都以“(C语言实现)Socket网络编程系列教程”开头。博主才疏学浅,系列教程有不对的地方...
  • 电子教材目录 前 言 21世纪是信息时代,电子技术的发展日新月异...首先以编程工具为例,现在的项目开发主要以C语言为主,已经很少人使用汇编进行项目开发,程序不再是一个人独自编写,而是由一个团队进行协作...
  • 而这些东西,大学老师们好像并不太“上心”,他们也许想“这些东西网络上随便一搜教程一大堆,课堂上将这些基础都算不上的内容也太浪费时间,一学期课时就那么多,不能在这里浪费时间!”。此时,嗷嗷待
  • C语言、C++学习路线

    2021-01-20 14:56:10
    C语言大纲 C语言知识点总结图 C语言视频学习推荐基础篇进阶篇速成篇基础入门之游戏实战篇C语言核心链表文档教程视频教程文件 C语言实例C++ C++大纲岗位分析 C与C++ 编程基础四大件数据结构与算法计算机网络操作系统...

空空如也

空空如也

1 2 3 4 5 ... 12
收藏数 238
精华内容 95
关键字:

c语言网络编程教程

c语言 订阅