- 在上一篇文章C语言——网络与套接字介绍了网络服务器的相关知识。现在我们来看看网络客户端的相关知识。 我们来写一个HTTP协议的网络客户端。说到HTTP协议,其实就像我们在C语言——网络与套接字自定义的IAHP协议一样。**协议是一段结构化对话。**网络客户端和服务器必须按照结构化的对话来进行通信。 打开telnet看看是如何下载网页的。 ~$ telnet www... 在上一篇文章C语言——网络与套接字介绍了网络服务器的相关知识。现在我们来看看网络客户端的相关知识。 我们来写一个HTTP协议的网络客户端。说到HTTP协议,其实就像我们在C语言——网络与套接字自定义的IAHP协议一样。**协议是一段结构化对话。**网络客户端和服务器必须按照结构化的对话来进行通信。 打开telnet看看是如何下载网页的。 ~$ telnet www...
- 结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合,叫做结构体。在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型(aggregate data type)的一类。结构体用关键字 struct来声明。 定义结构体类型变量 基本形式格式: struct 结构体名{ 成员表列; } 变量表列; 123 具体有四... 结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合,叫做结构体。在C语言中,结构体(struct)指的是一种数据结构,是C语言中聚合数据类型(aggregate data type)的一类。结构体用关键字 struct来声明。 定义结构体类型变量 基本形式格式: struct 结构体名{ 成员表列; } 变量表列; 123 具体有四...
- 条件编译 #include <stdio.h> #ifdef HELLO char *c = "hello world";//如果HELLO这个宏存在,包含这段代码 #else char *c = "No zuo,no die"; //否则包这段代码 #endif int main(){ printf("%s\n",c); return 0; } 12345... 条件编译 #include <stdio.h> #ifdef HELLO char *c = "hello world";//如果HELLO这个宏存在,包含这段代码 #else char *c = "No zuo,no die"; //否则包这段代码 #endif int main(){ printf("%s\n",c); return 0; } 12345...
- 1.Allegro Allegro是一个跨平台库。它致力于视频游戏和多媒体编程方面。它可以处理常见的,低层级的任务,如创建窗口、接受用户输入、加载数据 、画图、播放音频等等。提醒:Allegro 不是游戏引擎。 2.gdb GDB 是GNU项目使用的调试器。当运行gdb时,它可以让你知道另外一个程序里面正在发生什么事情或者在它崩溃时,它内部具体发生了什么。 GDB主... 1.Allegro Allegro是一个跨平台库。它致力于视频游戏和多媒体编程方面。它可以处理常见的,低层级的任务,如创建窗口、接受用户输入、加载数据 、画图、播放音频等等。提醒:Allegro 不是游戏引擎。 2.gdb GDB 是GNU项目使用的调试器。当运行gdb时,它可以让你知道另外一个程序里面正在发生什么事情或者在它崩溃时,它内部具体发生了什么。 GDB主...
- 假如你的程序一边从网络读取数据,一边向网络发送数据。如何在代码中同时执行几个不同的任务?根据前面的知识,我们知道可以通过创建多几个子进程来做这些事。但是创建进程很花时间,而且不同子进程之间共享数据很不方便。这时我们需要线程来帮我们解决这个问题。 如何创建线程呢? 我们有很多线程库可以用,其中最流行的就是POSIX线程库,也叫pthread 。可以在类Unix系统上使... 假如你的程序一边从网络读取数据,一边向网络发送数据。如何在代码中同时执行几个不同的任务?根据前面的知识,我们知道可以通过创建多几个子进程来做这些事。但是创建进程很花时间,而且不同子进程之间共享数据很不方便。这时我们需要线程来帮我们解决这个问题。 如何创建线程呢? 我们有很多线程库可以用,其中最流行的就是POSIX线程库,也叫pthread 。可以在类Unix系统上使...
- C语言共用体,又叫联合体,使用关键字union定义。共用体使用同一存储单元存放不同类型的变量。 定义共用体类型变量 基本形式格式: union 共用体名{ 成员表列; } 变量表列; 123 具体有四种方式 : 1、定义共用体的同时定义变量: union MyData{ int type; char str; }data; 1234 2、先定义共用体... C语言共用体,又叫联合体,使用关键字union定义。共用体使用同一存储单元存放不同类型的变量。 定义共用体类型变量 基本形式格式: union 共用体名{ 成员表列; } 变量表列; 123 具体有四种方式 : 1、定义共用体的同时定义变量: union MyData{ int type; char str; }data; 1234 2、先定义共用体...
- C语言程序的三种基本结构:顺序结构、选择结构(if语句)、循环结构(for、while、do-while)。 顺序结构 从第一条语句执行到最后一条语句,按顺序的执行。 示例: #include <stdio.h> #include <math.h> int main(int argc,char* argv){ double x,y,sum... C语言程序的三种基本结构:顺序结构、选择结构(if语句)、循环结构(for、while、do-while)。 顺序结构 从第一条语句执行到最后一条语句,按顺序的执行。 示例: #include <stdio.h> #include <math.h> int main(int argc,char* argv){ double x,y,sum...
- 首先C语言是一门面向过程的编程语言,它是由一系列的函数组成的。函数的使用必须遵守: 先声明后使用的原则 举个例子说明一下,下面是一个test.c的源程序: #include <stdio.h&... 首先C语言是一门面向过程的编程语言,它是由一系列的函数组成的。函数的使用必须遵守: 先声明后使用的原则 举个例子说明一下,下面是一个test.c的源程序: #include <stdio.h&...
- 一、变量的范围和生命期 1.全局变量 变量在(包括自定义函数和main函数)外定义/声明,作用范围:本文件。 2.局部变量 在函数内定义的(包括形参),作用范围:所在函数内。 注: 全局变量和局部变量同名,(在局部所在范围内)全局则被屏蔽(以局部为准) 局部变量和局部变量同名(不影响) 二、变量的存储方式和生命期 存储方式分为静态存储和动态存储: 1.静态存储:... 一、变量的范围和生命期 1.全局变量 变量在(包括自定义函数和main函数)外定义/声明,作用范围:本文件。 2.局部变量 在函数内定义的(包括形参),作用范围:所在函数内。 注: 全局变量和局部变量同名,(在局部所在范围内)全局则被屏蔽(以局部为准) 局部变量和局部变量同名(不影响) 二、变量的存储方式和生命期 存储方式分为静态存储和动态存储: 1.静态存储:...
- 创建文件 #include <stdio.h> int main(int argc,char *argv[]){ if(argc != 2){ printf("param error"); return 1; }else{ FILE *fd = fopen(*(argv+1),"w+"); if(fd != NULL){ printf("%s is cr... 创建文件 #include <stdio.h> int main(int argc,char *argv[]){ if(argc != 2){ printf("param error"); return 1; }else{ FILE *fd = fopen(*(argv+1),"w+"); if(fd != NULL){ printf("%s is cr...
- 一、学习目标 了解逻辑判断的概念了解if语句的使用方法了解switch语句的使用方法了解逻辑运算符的使用方法 目录 C语言真的很难吗?那是你没看这张图,化整为零轻松学习C语言。 第一篇:(一)脱离学习误区 第二篇:(二)C语言没那么难简单开发带你了解流程 第三篇:(三)轻轻松松理解第一个C语言程序 第四篇:(四)语言的基本数据类型及变量 第五篇:(五)C语言的变量... 一、学习目标 了解逻辑判断的概念了解if语句的使用方法了解switch语句的使用方法了解逻辑运算符的使用方法 目录 C语言真的很难吗?那是你没看这张图,化整为零轻松学习C语言。 第一篇:(一)脱离学习误区 第二篇:(二)C语言没那么难简单开发带你了解流程 第三篇:(三)轻轻松松理解第一个C语言程序 第四篇:(四)语言的基本数据类型及变量 第五篇:(五)C语言的变量...
- 一、学习目标 了解C语言变量的其它创建方式了解C语言常量了解C语言的运算符 目录 C语言真的很难吗?那是你没看这张图,化整为零轻松学习C语言。 第一篇:(一)脱离学习误区 第二篇:(二)C语言没那么难简单开发带你了解流程 第三篇:(三)轻轻松松理解第一个C语言程序 第四篇:(四)C语言的基本数据类型及变量 第六篇:(六)轻轻松松了解C语言的逻辑运算 第七篇:(七)... 一、学习目标 了解C语言变量的其它创建方式了解C语言常量了解C语言的运算符 目录 C语言真的很难吗?那是你没看这张图,化整为零轻松学习C语言。 第一篇:(一)脱离学习误区 第二篇:(二)C语言没那么难简单开发带你了解流程 第三篇:(三)轻轻松松理解第一个C语言程序 第四篇:(四)C语言的基本数据类型及变量 第六篇:(六)轻轻松松了解C语言的逻辑运算 第七篇:(七)...
- 本节书摘来自华章计算机《C编程技巧:117个问题解决方案示例 》 一书中第3章,第3.7节,作者是希里什·查万(Shirish Chavan),卢涛 译。 本节书摘来自华章计算机《C编程技巧:117个问题解决方案示例 》 一书中第3章,第3.7节,作者是希里什·查万(Shirish Chavan),卢涛 译。
- C语言的百年之后 C语言最早诞生于上世纪七十年代初期,更具体的时间是1972年。如果把C语言比喻成人的话,C语言比笔者的爱人还大两岁呢。这样一说C语言也已经是“人过四十,天过午”的编程语言了。对于像是Java(诞生于1995年)这样的编程语言,C语言简直就是大叔级别的编程语言了。和人类一样,编程语言也会经历生老病死,只不过有的语言年纪轻轻就夭折了,比如说Visual Basic(19... C语言的百年之后 C语言最早诞生于上世纪七十年代初期,更具体的时间是1972年。如果把C语言比喻成人的话,C语言比笔者的爱人还大两岁呢。这样一说C语言也已经是“人过四十,天过午”的编程语言了。对于像是Java(诞生于1995年)这样的编程语言,C语言简直就是大叔级别的编程语言了。和人类一样,编程语言也会经历生老病死,只不过有的语言年纪轻轻就夭折了,比如说Visual Basic(19...
- 【异周话题 第 13 期】C语言,真的已经过时了吗?话题背景1972 年,美国贝尔实验室的 D.M.Ritchie 在 B 语言的基础上最终设计出了一种新的语言,他取了 BCPL 的第二个字母作为这种语言的名字,这就是著名的 C 语言。作为世界上最古老的编程语言之一,C 语言现在用得多吗?在业界,一般的答案是:如果一件事可以用 X 语言做(X 可以代指任何语言),就一定不要用 C 语言做。同... 【异周话题 第 13 期】C语言,真的已经过时了吗?话题背景1972 年,美国贝尔实验室的 D.M.Ritchie 在 B 语言的基础上最终设计出了一种新的语言,他取了 BCPL 的第二个字母作为这种语言的名字,这就是著名的 C 语言。作为世界上最古老的编程语言之一,C 语言现在用得多吗?在业界,一般的答案是:如果一件事可以用 X 语言做(X 可以代指任何语言),就一定不要用 C 语言做。同...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢
2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考
2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本
2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签