程序设计中的指令是什么?有哪几种?

程序设计中的指令是什么?有哪几种?,第1张

Perl在CGI程序设计中常用的函数 指令:#

说明:注解符号Remark宣告

范例:#本程序是一个示范注解说明 指令:print

语法一:print Filehandle LIST

说明:这个Filehandle可把它看作在I(Input)/O(Output)间的一个桥梁,可以利用Filehandle来做出数据读入写出的动作。stdin是代表从哪边输入数据,例如从电脑的键盘输入,stdout是代表从哪边输出数据例如从电脑的屏幕输出stderr是代表从哪边输出错误的数据,例如从电脑的屏幕输出。而在Perl语言中有三个标准的Filehandle:

握逗 (一)STDIN(标准输入):是代表stdin的Filehandle

(二)STDOUT(标准输出):是代表stdout的Filehandle

(三)STDERR(标准错误输出):是代表stderr的Filehandle

如果要使用其他Filehandle的时候,就要用open这个函数来打开一个Filehandle,我们可以用print这个函数把LIST的数据输出给Filehandle。在为大家介绍print这个函数之前,先让我们来看看print函数中特殊打印符号字符:

符号 内定含意

n 换行New Line

r 光标换行Return

t Tab键

f 换页Form feed

b 退回一键Backspace

v 垂直Tab键

a 响铃Bell

07 十进制ASCII码

xff 十六进制码

c[ 控制字符

范例:

print STDOUT"i love perln"

将“i love perl"再加上换行显示于屏幕上。

--------------------------------------------------------------------------------

语法二:Print LIST

说明:如果省略Filehandle的话,就会把Filehandle内定为STDOUT。也就是会将LIST的数据内容显示于屏幕上。

范例:

$Str1ng="perl"

print"i love $stringn"

会将“i love perl”再加上换行显示在屏幕上,而如果要让双引号内的变量失效的话,可以在变量前面加上这个符号。例如如果是print“i love $string”的话,就会显示出“i love $string”这个隐皮首字符串。

--------------------------------------------------------------------------------

语法三:print

说明:同时省略Filehandle和LIST的话,就会以STDOUT为Filehandle,并会输出$_这个内定输出变量的数据内容。如果$_变量是一个空字符串的话,就会显示出一个空字符串。

范例:

$_="i love perln"

print

就会将"i love perl"再加上换行显示在屏幕上

--------------------------------------------------------------------------------

指令:printf

语法一:printf Filehandle LIST

说明:在perl语言中也提供C语言中printf的语法,用法和C语言中的用法一模一样。如果把Filehandle省略的话,也一样会把STD0UT当成是内定的Filehandle。在为大家介绍printf函数之前,先让我们来看看printf函数中变换符号的字符:

符号 内定含意

%c 字符

%s 字符串

%d 整数

%f 浮整数

%h 十六进制码

%o 八进制码

范例:

printf〈"chmod%d%s\n","7l1","cgi")

会将“chmod 7ll cgi”再加上换行显示于屏幕上。

--------------------------------------------------------------------------------

指令:chop

语法:chop($string)

说明:把最后一灶数个字符删除掉,常常用这个函数把换行的字符(n)删除掉。

范例:

$string="hello!n"

chop($string)#此时$string="hello!"

而这两行也可以写成chop($string="hello!\n")

--------------------------------------------------------------------------------

指令:split

语法:split(/pattern/,$string,limit)

其中/pattern是文字处理的模式,在下一小节中会有详细的语法介绍。而limit是代表要分割的个数,可以省略。

说明:用一个指定的文字处理模式来分割$string字符串。

范例:

$string="iamcute"

@list=split(/:/,$string)#此时@list=〈"i","am","cute")

($a,$b,$c)=split(/:/,$string)#此时$a="i",$b="am",$c="cute"

@list=split(/:/,$string,2)#此时@list=("i","love")

在传送CGI应用程序数据的时候会先将数据编码,其中会将FORM中每个数据字段的数据内容用&这个符号隔开,所以在解码的时候就要以&这个符号为分割的字符,将每个数据字段分割出。例如:

$string="who=A&email=B"

@list=split(/&/,$string), #此时@list=〈"who=A","email=B")

而数据字段的名称和这个数据字段的值是用=这个符号来隔开,如果想取得数据字段的名称和所对应的值的话,就用要=这个符号来分割数据字段,例如:

$list="who=A"

(0$name,$value)=sp1it(/=/,$list)#此时$name="who"$value="A"--------------------------------------------------------------------------------

指令:keys

语法:keys(%ARRAY)

说明:取出关联数组%ARRAY中全部的key。

范例:

%NAMES=(1,"one",2,"two")

@list=keys(%NAMES), #此时@list=(l,2)--------------------------------------------------------------------------------

指令:values

语法:values(%ARRAY)

说明:取出关联数组%ARRAY中全部的value。

范例:

%NAMES=(1,"one",2,"two")

@list=values(%NAMES)#此时@list=("one","two")--------------------------------------------------------------------------------

指令:reverse

语法:reverse(@array)

说明:将数组@array中的元素由后到前重新排列。

范例:

@list=("A","B","C","D")

@1ist=reverse(@list)#此时@list=("D","C","B","A") --------------------------------------------------------------------------------

指令:sort

语法:sort(@array)

说明:将数组@array中的元素由小到大排序,如果要由大到小排序的话,就要再加上reverse这个函数。

范例:

@array=("b","c","a")

@array=sort(@array)#此时@array=("a",b","c")

@array=(reverse sort@array)#此时@array=("c","b","a")

这个语法也可以写成@array=(reverse sort(@array))

@number=(l0,3.20)

@number=sort(@number)#此时@number=(l0,20,3)

由上个范例可以知道如果要sort函数来排 序数值的时候,就会出差错,因此要用下面这个方法才能正确地使用sort函数来排序。

@number=(sort{$a<=>$b}@number)#此时@number=(3,10,20)--------------------------------------------------------------------------------

指令:length

语法:length($string)

说明:求出一字符串$string的bytes值。

范例:

$string="Perl"

@size=length($string)#此时$size=4--------------------------------------------------------------------------------

指令:substr

语法:substr($string,offset,length)

其中offset代表起始字符的位置,length代表引用的字符串长度,如省略length的话代表从起始值到字符串的最后一个字符长度。而offset如果是负值的话,就会从字符串右边开始取出指定的字符串。

说明:在一字符串$string中取出想要的字符串。

范例:

$x=substr("testing",2,2)#此时$x="st"

$x=substr("testing",2)#此时$x="sting"

$x=substr("testing",-2,2)#此时$x="in"--------------------------------------------------------------------------------

指令:index

语法:index($string,$substring,position)

其中$substring是指要寻找的字符,position代表要从哪一个位置开始找起,如省略position的话就从头开始找起。

说明:返回所要找寻的字符在一字符串$string中的位置,如果在字符串中找不到字符的话,则会返回-l这个值。

范例:

$x=index("testing","t")#此时$x=0

$x=index("testing","t",2)#此时$x=3

$x=index("testing","perl")#此时$x=-l--------------------------------------------------------------------------------

指令:push

语法:push(@array,$string)

说明:在数组@array的最后一个元素后附加新的元素string到数组@array中。

范例:

@array=("one","two");

push(@array,"three")#此时@array=〈"one","two","three")--------------------------------------------------------------------------------

指令:pop

语法:pop(@array)

说明:将数组@array的最后一个元素删除,并将删除的元素返回。

范例:

@array=〈"one"'"two")

$rm=pop〈@array)#此时@array=("one")而$rm="two"--------------------------------------------------------------------------------

指令:unshift

语法:unshift(@array,$string)

说明:在数组@array的第一个元素前附加新的元素$string到数组@array中。

范例:

@array=("one","two")

unshift(@array'"three")#此时@array=("three","one","two")--------------------------------------------------------------------------------

指令:shift

语法:shift(@array)

说明:将数组@array的第一个元素删除,并将删除的元素返回。

范例:

@array=("one","two")

$rm=shift(@array)#此时@array=("two"),而$rm="one"--------------------------------------------------------------------------------

指令:join

语法:join($string,@array)

说明:在一数组@array的元素之间加上一指定的字符$string,并将结果返回。

范例:

@array=("one","two","three")

$total=join(":",@array)#此时$total="one:two:three"--------------------------------------------------------------------------------

指令:grep

语法:grep(/pattern/,@array)

说明:将符合文字处理模式(regular expression)的数组元素找出来。

范例:

@array=("one","on","in")

$count=grep(/on/,@array)#此时$count=2(代表有二个元素符合)

@result=grep(/on/,@array)#此时@result=("one","on")--------------------------------------------------------------------------------

指令:hex

语法:hex($string)

说明:将十六进制的数值转成十进制。

范例:

$decimal=hex("ff")#此时$decimal=255--------------------------------------------------------------------------------

指令:rand

语法:rand($interger)

说明:常和函数srand搭配来取得一随机数,如果没有事先宣告stand函数的话,则取出的数值是一个固定值。这个语法会返回一个介于0和$interger之间的数值,如果$interger省略的话,则会返回一个介于0和1的数值。

范例:

srand#要先宣告srand函数,才能产生随机数的效果

$int=rand(10)#$int的值会大于0而且小于10

如果希望产生的乱数是整数的话,就要再 加上int这个函数

$int=int(rand(10))#$int的值是一个整数,且值在0和9之间 --------------------------------------------------------------------------------

指令:localtime

语法:localtime(time)

说明:可返回九个有关时间的元素,在写CGI应用程序的时候常会用到系统的时间,所以在此会详细介绍这个函数的用法。

范例:

($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time)

其中:

$sec 代表秒数[0,59] $min 代表分数[0,59]

$hour 代表小时数[0,23] $mday 代表是在这个月的第几天[1,31]

$mon 代表月数[0,11],要将$mon加l之后,才能 符合实际情况

$year 从l990年算起的年数

$wday 从星期六算起,代表是在这周中的第几天 [0,6]

$yday 从一月一日算起,代表是在这年中的第几 天[0,365]

$isdst 只是一个flag

知道这些变量之后,就可以在CGI应用程序中拿来应用了。此外,也可以用下面这一行指令在Unix系统下取得系统的时间。为了避免错误发生,最好用绝对路径的方法来取得系统时间,如果绝对路径不清楚的话可以用“which date”,这个指令来得知。最后要提醒读者的是要用`这个符号才能执行Unix系统的外部程序,如果是用‘(单引号)这个字符号的话,就不能正确执行系统的程序了。 $date=`/usr/bin/date`

而在perl5版本中,也可以用下面这一行指令来取得系统时间。

$date=localtime(time)

--------------------------------------------------------------------------------

指令:die

语法:die LIST

说明:会把LIST字符串显示出来,并退出程序。常常和$!这个代表错误信息的变量一起使用。

范例:

Open(FILE'"$filename")||die"Cannotopenfile$!n"

如果打开文件失败的话,就会显示出错误的信息,之后再退出程序。

--------------------------------------------------------------------------------

指令:open

语法:open(Filehandle'"$fiiename")

其中$filename是一个指定打开的文件名。

说明:这是一个很常用的函数,可用于文件的打开(Read0niy)。在CGI程序设计中常常会打开一个文件来读取数据,所以笔者会详加说明这一个函数的相关用法。这个Filehandle可把它看作在I(Inpnt)/O(Output)间的一个桥梁,可以利用Filehandle来作出数据读入写出的动作。开始可用open这个函数来打开一个指定的文件,接下来可以使用<Filehandle>来读取所打开文件的数据内容,最后一定要用close这个函数来关闭这个之前打开的Filehandle。要注意的是在CGI程序写作中,当用open这个函数来打开文件的时候,一定要在打开的文件前加上文件所在的绝对路径名称。

范例:

$filename=Vpath/cgi.txt"

open(FILE'"$filename")||die"Can not open $filename\n"

#将数据指派给纯量变量$line(一行一行地)

while($line=<FILE>){

  print"$line"

}

close(FILE)

就会把cgi.txt这个文件的内容显示出来。

--------------------------------------------------------------------------------

语法二:open(Filehandle,"<$filename")

说明:这个语法也可以打开一个存在的文件(Read Only)。

范例:

$filename="/path/cgi.txt"

open(FILE,"<$filename")||die"Can not open $filenamen"

#将<FILE>全部的数据内容都指派给数组@array

@array=<FILE>

close(FILE)

print"@array"

也会把cgi.txt这个文件的内容显示出来。

--------------------------------------------------------------------------------

语法三:open(Filehandle,">$filemme)

说明:建立一个新的文件(Write Only),如果已经存在这个文件了,就会把旧文件名覆盖过去。并可用print Filehandle的方式将数据写到所打开的文件中。

范例:

$filename="/path/cgi.txt"

open(FILE,">$filename")||die"Can not open $filenamen"

print FILE"this is a new line1n"#n是换行字符

print FILE"this is a new line2n"

close(FILE)

会把数据存在一个新文件中。

--------------------------------------------------------------------------------

语法四:Open(Filehandle,">>$filename")

说明:数据用附加的方式写入一文件(Write Only),如果指定的文件名不存在的话,就会建立一个新的文件。

范例:

$filename="/path/cgi.txt"

open(FILE,">>$filename")||die"Can not open $filenamen"

print FILE"this is a newline1n"

print FILE"this is a newline2n"

close(FILE)

会把数据附加(append)到一个文件(cgi.txt)中。

...你应该是个门外汉贺裤蔽吧,首先IT里面做游戏也是软件开发,C++不是指令而是一门计算机语言,不是纯判所有的游戏或者应用软件都是用C++开发的。比如手机android,内核使用C跟java编写,上层应用是用java。比如苹果的ios用的是obj_C编写的,比如微软的 *** 作系统,用的禅州是部分汇编+C编写的。

机器语言多了,好几十中,C++只是其中比较流行的一种而已。

常用的术语其实很多

术语 解释

问题解决problem-solving 表述问题,找到解决方案并表述方案过程

高级语言high-levellanguage 便于人类读写而设计的编程语言

低级语言low-levellanguage 便于机器执行而设计的语言:机器语言、汇编语言

可移植性portability 程序可以在不同计算机 *** 作系统上运行的属性

形式语言formallanguage 人类设计用于特殊目的的语言:表达思想的计算机程序。

自然语言naturallanguage 人类所说的,经过自然演化的各种语言

解释interpret 逐句翻译高级语言编写的源程序,边翻译边执行

编译compile 一次性把高级语言翻译成二进制指令序列,形成目标代码

源代码sourcecode 用高级语言编写的,未经过编译的字符流

目标代码objectcode 源代码经过编译器编译得到的输出结果

可执行程序executable 可以直接在计算机执行的二进制01序列

算法algorithm 解决同类型问题的一般过程

bug 程序中发生的错误

语法syntax 程序的结构

语义semantics 程序的语义

解析parse 检查一个程序,并分析其语法结构

语法错误syntaxerror 程序中无法完成语法解析的错误

运行时错误run-timeerror 在程序执行过程中导致程序终止失败的错误

逻辑错误logicalerror 程序中发生导致程序偏离编程本意的错误

调试debugging 发现并解含迟释三种错误的过程

变量 有名字的值存储区

指针指向内存的映射

值 字母或数字或者其他可存储在变量里的东西

类型 值的集合:int、char

关键字 保留的单词,编译器用以解析程序的:void、int、endl

语句 一行用于表达一个命令或动作的代码

变量声明 用于创建新变量并且标识变量类型的语句

变量赋值 将值赋给变量的语句

表达式 变量、运算符和值的联合体、代表单个结果值,表达式也有类型,这个类型由运算符和 *** 作数决定

运算符 特殊符号,代表一个简单的数学运算,比如:加法或乘法

*** 作数 运算符作用的值

优先级 运算发生的先后顺序

组合 为了简洁地表达复杂计算而将简单表达式和语句结合成复合语句和表达式

浮点数floating-point 一种既包含小数又包含整数的变量类型

初始化initialization 声明变量并且同时给变量赋值的语句

函数function 一些列命名并且完成某种功能的语句

形参parameter 调用函数时所需要的信息

实参argument 当调用函数时所必须乎判提供的数值,这个值必须与函数中对应的形参具有相同的类型

调用call 使函数运行

模运算符% 作用于整数的运算符,其结果等于一个整数除以另一个整数的余数

条件语句 语句块,它的执行与否取决于某些条件

链接link 一种把几种条件语句连接成一个序列的方式

递归Recursion 正在执行的函数调用它自己的过程

无限递归 函数递归调用自己,无法到达递归基,最终无限递归会导致运行时错误

返回类型returntype 函数返回结果的类型

返回值returnvalue 函数执行需要输出的值

无效代码deadcode 程序中从未执行过的代码,大部分原因是因为他们出现return语句之后

支架代码岁老改scaffolding 在开发过程中使用的代码,它不属于最终版本

空类型void 一种特殊的返回类型,表示空函数,也就是没有返回值的函数

重载overloading 多个函数具有相同的函数名和不同的参数,在C++中,通过提供的参数判断需要调用哪一个函数

布尔类型bool 一种只有true和false两种值的变量或值

标记flag 变量用于记录条件或者状态信息

比较 *** 作符comparisonoperator 用于比较两个变量并产生一个bool值的 *** 作符,表示两个 *** 作数之间的关系

逻辑 *** 作符logicaloperator 用于结合bool值测试复合条件的 *** 作符

循环语句loopcode 当条件为真,或满足某系条件时,将会反复执行的语句

无限循环 其中包含了永远为真的条件的循环

循环体 包含在循环中的语句

迭代 循环体的一次执行过程,包括对条件的判断

制表符 特殊字符,在C/C++中写作 ,这个字符会使得光标移动到当前行的下一个制表位

封装 将一个复杂的程序分解成独立的组建(例如:函数),并保证组建之间相互独立,例如可以使用局部变量来达到

局部变量 在函数内部声明的变量,他只在这个函数内部适用

广义化 适用适度广义的元素(例如:变量和参数)替换掉不再需要的特殊元素(比如:常量)。广义化可以使得代码更加通用,更容易复用,有时甚至更容易编写

开发计划 程序开发的流程

对象object 相关的数据和对数据 *** 作的一系列函数组成的集合

索引index 用于选择一个有序集合中成员的变量或者变量值。比如:在字符串中查找字母所用的变量

遍历traverse 迭代对集合中的所有元素进行类似的 *** 作

计数器counter 用于计数变量,一般初始化为0,并在 *** 作时递增

递增increment 每次对变量加一

递减decrement 每次对变量减一

拼接concatenate 将两个 *** 作数首相接

结构体 由数据组成的集合,通常当作单个对象对待

实例变量 一块有名字的数据,是结构体的组成部分

引用 一个志向或引用变量或结构体的值,在状态图中,用箭头表示引用

按值传递 一种传递形参的方法,这种方法将实参复制到对应的形参中,形参和实参存储在不同的位置上

按引用传递 一种传递形参的方法,在这种方法中,形参是一个实参变量的引用,形参的修改同时会影响到实参变量

实例instance 某目录中的一个例子。猫是猫科动物的一个实例,任何一个对象都是某种类型的一个实例

实例变量instancevariable 组成结构体的一个命名的数据项,每个结构体独有该类型实例变量的一个副本

微服务对服务进行了拆分进行了细粒度的部署

容器拥有运行应用的一切环境的可移植可隔离的快速部署的单元

比如说,单例,协程,设计模式,二叉树,等等,程序员工作中会用到哪些专业术语呢,求大神告知下,收集下术语名称就行


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12425291.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存