0

Pascal-基础结构

1.定义变量,定义变量类型: ```c var 变量名1,变量名2……,计算变量3,计算变量4……:变量类型; ``` ![](http://www.flayerveo.com/usr/uploads/2020/02/3308520616.png) 2.传参: ```c bengin 变量1:=参数; 变量2:=参数; …… ``` ![](http://www.flayerveo.com/usr/uploads/2020/02/1342- 阅读剩余部分 -
0

Pascal-汇编语言基础知识

##1.1 CPU指令 计算中,指令和数据都是 二进制 表示. 通过0和1编写程序的语言称为机器语言 不同的CPU可能会有不同的机器码. ####1.1.2计算机程序设计语言 目标程序就是为源程序经过编译可直接被计算机运行的机器码集合,在计算机文件上以.obj作为拓展名. 汇编语言中描述指令功能的符号表示机器指令,被称为指令助记符. 汇编程序的拓展名".asm" **例1.2 用8086CPU汇编语言编写两个十进制数100和256相加** ``- 阅读剩余部分 -
0

Pascal-初始知识

首先Free Pascal IDE必须下载32位的,64位的没有fp.exe不能打开IDE界面。 下载地址:http://www.freepascal.org/download.var 安装过程这里就免了。直接进入正题。 1.解决欢迎界面乱码 双击桌面Free Pascal IDE图标打开 ![](http://www.flayerveo.com/usr/uploads/2020/02/1633533341.png) 出现乱码: ![](http://www.f- 阅读剩余部分 - open(文件-->打开,这里可以用鼠标直接点,也可以用键盘,对应的键盘操作为Alt+F-->N(菜单项中的变色字母,或者上下键移动回车)) ![](http://www.flayerveo.com/usr/uploads/2020/02/3136424854.png) ![](http://www.flayerveo.com/usr/uploads/2020/02/3304979164.png) 这里会自动新建一个noname01.pas的程序文件 下面打代码就好了。 ![](http://www.flayerveo.com/usr/uploads/2020/02/320095627.png) 下面保存,运行之前需要先保存,File-->Save,在弹出的对话框中Name填hello,然后点OK ![](http://www.flayerveo.com/usr/uploads/2020/02/2432026390.png) ![](http://www.flayerveo.com/usr/uploads/2020/02/1414619112.png) ![](http://www.flayerveo.com/usr/uploads/2020/02/2849633113.png) ![](http://www.flayerveo.com/usr/uploads/2020/02/3747920765.png) 可以看到noname.pas变成了hello.pas ![](http://www.flayerveo.com/usr/uploads/2020/02/1422047718.png) 3.运行程序与查看结果 运行可以通过菜单Run-->Run运行,也可以通过快捷键Ctrl+F9运行 ![](http://www.flayerveo.com/usr/uploads/2020/02/320136724.png) 编译失败 ![](http://www.flayerveo.com/usr/uploads/2020/02/320967213.png) 仔细检查发现是writen写错了,正确的应该是writeln Esc退出,然后重新编辑保存运行。编译成功会看到下面的黑框一闪而过。 ![](http://www.flayerveo.com/usr/uploads/2020/02/763232597.png) 我们可以通过Debug-->User screen(Alt+F5)查看运行结果 ![](http://www.flayerveo.com/usr/uploads/2020/02/3061439339.png) 结果如下,前几次的结果也会显示出来。 ![](http://www.flayerveo.com/usr/uploads/2020/02/27334666.png) 当然我们也可以通过上一节的加readln; 语句来看结果
-->
0

C++-网络编程-5.socket阻塞与非阻塞

**阻塞(blocking) 、非阻塞 (non-blocking):**Windows套接字在阻塞和非阻塞两种模式下执行I/O操作。在阻塞模式下,在I/O操作完成前,执行的操作函数一直等候而不会立即返回,该函数所在的线程会阻塞在这里。相反,在非阻塞模式下,套接字函数会立即返回,而不管I/O是否完成,该函数所在的线程会继续运行。 ##阻塞模式: **阻塞模式的套接字上,调用任何一个Windows Socket API 都会耗费等待时间:** 当调用recv()函数时,- 阅读剩余部分 -
0

C++-网络编程-4.socket编程之TCP通讯

![](http://www.flayerveo.com/usr/uploads/2020/02/1540225395.png) ##服务端 Server: ```cpp 初始化winsock 1.创建TCP套接字 2.绑定socket到一个IP和端口上 3.监听套接字 4.接受客户端请求 5.发送、接收消息 6.关闭套接字 销毁winsock ``` ##客户端 Client: ```cpp 初始化winsock 1.创建TCP套接字 - 阅读剩余部分 -
0

C++网络编程-3.WSA系列API函数

**什么是WSA (Windows Sockets Asynchronous)? ** 不带WSA前缀标准的socket函数,如何socket(), send(), recv()这些不带WSA前缀的函数,这些函数是全平台通用的;而加上了WSA前缀的是微软的扩展函数,一般是Winsock2定义的2.0版的函数,只能在Windows平台用。 ##WSAStartup() 函数: 用于初始化进程调用的Winsock相关的dll。 格式: ```cpp int WS- 阅读剩余部分 -
0

C++-网络编程-2.socket常用API函数

##socket() 函数: 创建一个套接字 格式: ```cpp SOCKET 套接字描述字 = socket(int af, int type, int protocol) ``` 参数一 (af): 指定应用程序使用的协议族,对于TCP/IP协议族,该参数设置为AF_INET; 参数二 (type):指定要创建的套接字类型,流套接字类型为SOCK_STREAM、数据报套 接字类型为SOCK_STREAM;原始套接字SOCK_RAW; 参数三 (p- 阅读剩余部分 -
0

C++网络编程-1.socket简介与初始化

**Socket:**将TCP/IP集成到Unix中,出现了许多TCP/IP应用程序接口, 这些接口称为Socket接口。如今Socket接口已成为TCP/IP网络最通用、成熟的API,被称为"套接字"。 **WinSock:**微软制定的一套Windows下的网络编程接口,即WinSock规范。在实际应用中Windows Sockets规范主要有1.1和2.2版。两者的最重要区别是1.1版只支持TCP/IP协议,而2.2版可以支持多协议并且有良好的向后兼容性。 **- 阅读剩余部分 -
0

C++-网络编程-域名和网络结构体hostent

#域名和网络地址结构体---struct hostent **该结构体定义如下:** ```cpp struct hostent { char *h_name; //主机名,即官方域名 char **h_aliases; //主机所有别名构成的字符串数组,同一IP可绑定多个域名 int h_addrtype; //主机IP地址的类型,例如IPV4(AF_INET)还是IPV6 int h_length; //主机IP地- 阅读剩余部分 -
0

C++-算法库 algorithm

##导入库: ```cpp #include ``` ##非修改性序列操作 循环 对序列中的每个元素执行某操作 for_each() 查找 在序列中找出某个值的第一次出现的位置 find() 计数 在序列中统计某个值出现的次数 count() 两个序列中的对应元素都相同时为真 equal() 搜索 在序列中找出一子序列的第一次出现的位置 search() ##修改性序列操作 复制 从序列的第一个元素起进行复制 copy() 从序列的最- 阅读剩余部分 -
0

C++-数学库 math

##导入方式: ```cpp #include ``` ##功能: ```cpp double sqrt(double x); //开平方sqrt是square root缩写 double pow(double x,double y); //求乘方x^y,pow是power的缩写 ```
    页码:
ICP证: 浙ICP备2022036136号