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

程序设计中的指令是什么有哪几种,第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="i;am;cute";

@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,320);

@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/cgitxt";

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

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

while($line=<FILE>){

  print"$line";

}

close(FILE);

就会把cgitxt这个文件的内容显示出来。

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

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

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

范例:

$filename="/path/cgitxt";

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

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

@array=<FILE>;

close(FILE);

print"@array";

也会把cgitxt这个文件的内容显示出来。

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

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

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

范例:

$filename="/path/cgitxt";

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/cgitxt";

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

print FILE"this is a newline1n";

print FILE"this is a newline2n";

close(FILE);

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

N-S图:也叫盒图,这种流程图将全部算法写在一个矩形框内,而且在框内还可以包含其它的从属于它的框。

PAD图:也叫问题分析图,用二维树形结构的图表示程序的控制流。

程序流程图:也叫程序框图,用统一规定的标准符号描述程序运行具体步骤的图形表示。

E-R图:也叫实体-联系图,用实体类型、属性和联系等方法,描述现实世界的概念模型。

1、表示方式的不同:

N-S图:用矩形框,将全部算法写入;PAD图:用二维树形结构表示;

程序流程图:用统一规定的标准符号表示;E-R图:用实体类型、属性和联系等方法表示。

2、优点不同:

N-S图:功能域明确,一眼就可以看出来;PAD图:程序结构十分清晰;

程序流程图:对控制流程的描绘很直观;E-R图:表达能力强,易于理解。

3、缺点不同:

N-S图:不能任意转移控制;PAD图:不如流程图易于执行;

程序流程图:不易表示数据结构;E-R图:数据和应用分离,ER仅分析数据及其联系。

扩展资料

N-S图特点:

1)NS图形象直观,功能域明确,具有良好的可见度;

2)很容易确定局部和全局数据的作用域;

3)不可能任意转移控制;

4)很容易表示嵌套关系及模块的层次关系;

5)复杂度接近代码本身,修改需要重画整个图;

6)它强制设计人员按SP方法进行思考并描述他的设计方案,因为除了表示几种标准结构的符号之处,它不再提供其他描述手段,这就有效地保证了设计的质量,从而也保证了程序的质量。

参考资料来源:百度百科--N-S图

参考资料来源:百度百科--PAD图

参考资料来源:百度百科--程序流程图

参考资料来源:百度百科--E-R图

参考资料来源:百度百科--概念模型

多态:简单的来说,就是父类引用指向之类对象。因为多态是面向对象的特性,所以,多态也一定是针对对象的术语。多态有一个先决条件。就是一定要有继承关系。

举例:

(1)创建一个汽车父类。

/

  <p>汽车类-父类</p>

  @author z_y

 /

public class Vehicle {

    

    public void run(){

        Systemoutprintln("汽车跑起来了!");

    }

}

(2)创建一个小汽车子类,重写父类中的run方法。

/

  <p>小汽车-子类</p>

  @author z_y

 /

public class Car extends Vehicle {

    @Override

    public void run(){

        Systemoutprintln("小汽车跑起来了!");

    }

}

(3)创建一个自行车类,重写父类中的run方法。

/

  <p>自行车类-子类</p>

  @author z_y

 /

public class Bicycle extends Vehicle {

    @Override

    public void run(){

        Systemoutprintln("自行车跑起来了!");

    }

}

(4)编写一个测试类

/

  <p>多态测试类-父类引用指向子类对象</p>

  @author z_y

 

 /

public class Demo {

    public static void main(String[] args) {

        //创建一个父类对象

        Vehicle vehicle = new Vehicle();

        vehiclerun(); //调用父类的run方法。

        

        //用父类的引用指向一个子类对象-父类对象的多态

        vehicle = new Car();

        vehiclerun();  //调用car子类中的run方法

        

        //用父类的引用指向另一个子类对象-父类对象的多态

        vehicle = new Bicycle();

        vehiclerun();  //调用bicycle子类中的run方法

    }

}

在上面的测试代码中,父类对象先后指向两个子类对象,这种行为。就是多态。

3应用:多态在面向对象中有广泛的应用,例如:当我们不知道参数的具体类型时,使用父类引用来接收参数,可以起到很好的效果。

曼哈顿图

将示例数据下载下来:

wget >

你说的是AVR单片机。

PORTA = 0x00;---定义PA口为0x00,及PA口上的所有管脚输出为低电平,同样道理,如果些微PORTA=0xFF,则都输入高电平,0xFF及二进制的11111111,如果想让某一位输出高,其他为低,如00000001,则是PA0输出为高电平,PA1——PA7输出为低电平。(说明:每个口线与单片机实际引脚的对应关系请参看技术手册。)

DDRA = 0xFF;----定义引脚的输出输入模式,1为输出,0为输入。当使用输出模式及设置为1时,PORTA的值将影响内部上拉电阻的使用,如果PORTA对应管脚的值为1,则使用内部上拉电阻,否则不采用。 除了这里说的“=”之外,管脚的控制还有其他算符,|= ,&=! ,^=,==。

以下B,C,D端口同理。

打开Visual C++ 60进行C语言程序的编辑、编译、运行后,存储文件夹中会出现以下类型的文件:

c:源代码文件,包含编写的程序代码。

obj:目标文件,编译器将源代码文件编译后生成的文件。

exe:可执行文件,链接器将目标文件链接后生成的文件,可以运行程序。

pdb:程序调试数据库文件,包含程序在运行时的调试信息,可用于调试程序。

以上就是关于程序设计中的指令是什么有哪几种全部的内容,包括:程序设计中的指令是什么有哪几种、软件设计中,N-S图、PAD图、程序流程图、E-R图,这四种图分别表示什么意思,有什么区别、什么是面向对象程序设计中的多态性等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/zz/10076565.html

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

发表评论

登录后才能评论

评论列表(0条)

保存