当前位置:首页 » 编程语言 » c型语言中的感染
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c型语言中的感染

发布时间: 2022-11-22 13:34:19

c语言中\t是什么意思

C语言的t 代表的意思是水平制表符。相当于按了键盘上的TAB按键,通常宽度相当于8个空格的位置,但有些软件允许设置tab的宽度。在双引号或定界符表示的字符串中有效,在单引号表示的字符串中无效。

一般来说,其在终端和文件中的输出显示相当于按下键盘TAB键效果。一般系统中,显示水平制表符将占8列。同时水平制表符开始占据的初始位置是第8*n列(第一列的下标为0)。

实例代码如下:

❷ c语言利用递归 解决流感传染问题

#include<stdlib.h>
#include<malloc.h>
#include<memory.h>

//感染函数输入参数:
//room:房间现状
//n:房间行列数
//p:感染者所在房间序号
voidinfect(char*room,intn,intp)
{
if(p<0)return;
if(p>=n*n)return;

inta[4];
a[0]=p-1;
a[1]=p+1;
a[2]=p+n;
a[3]=p-n;
p%=n;
if(p==0)a[0]=-1;
if(p==n-1)a[1]=-1;
if(a[2]>=n*n)a[2]=-1;
if(a[3]<0)a[3]=-1;

for(p=0;p<4;++p)
{
n=a[p];
if(n==-1)continue;
//如果该房间住着健康的人,则感染
if(room[n]=='.')room[n]='@';
}
}

//用来显示第m天的宿舍状态
voidprint(constchar*room,intn,intm)
{
inti,j;
printf("第%d天宿舍状态: ",m);
for(j=0;j<n;++j)
{
for(i=0;i<n;++i)printf("%c",*room++);
printf(" ");
}

}

intprocess(constchar*filename)
{
intn;//房间行列数
char*room;//房间
intm;//m天

FILE*f;
if(NULL==(f=fopen(filename,"r")))return-1;//文件打开失败

//读取房间行列数
charbuf[1000];
if(NULL==fgets(buf,sizeof(buf),f))return-2;//读取行列数失败
if(1!=sscanf(buf,"%d",&n))return-2;
if(n<=0)return-3;//房间行列数n不合法

//读取房间现状
room=(char*)malloc(n*n);//为房间分配内存
inti;
char*temp;
for(i=0,temp=room;i<n;++i,temp+=n)
{
if(NULL==fgets(buf,sizeof(buf),f))
{
free(room);
return-4;//读取读取房间现状有误
}
memcpy(temp,buf,n);
}

//对房间现状进行合法性分析
for(i=n*n,temp=room;i;--i,++temp)
{
if(*temp=='.')continue;
if(*temp=='@')continue;
if(*temp=='#')continue;
return-5;//房间现状不合法
}

//读取m值
if(NULL==fgets(buf,sizeof(buf),f))return-6;//读取m失败
if(1!=sscanf(buf,"%d",&m))return-6;//读取m失败
if(m<0)return-7;//m不合法

fclose(f);

intj;
char*ROOM;//用来备份房间现状
ROOM=(char*)malloc(n*n);
print(room,n,0);

for(j=0;j<m;++j)
{
memcpy(ROOM,room,n*n);//备份房间现状
for(i=n*n,temp=ROOM;i;--i,++temp)
{
if(*temp!='@')continue;
//开始感染前后左右的房间
infect(room,n,temp-ROOM);
}
print(room,n,j+1);
}

for(i=n*n,j=0,temp=room;i;--i,++temp)
if(*temp=='@')++j;
printf("%d ",j);
free(room);
free(ROOM);
return0;
}

intmain(intargc,char*argv[])
{
intret;
if(argc<=1)
{
printf("用法:infectfilename ");
return0;
}

ret=process(argv[1]);
switch(ret)
{
case-1:printf("文件%s打开失败。 ",argv[1]); break;
case-2:printf("读取房间行列数失败。 "); break;
case-3:printf("房间行列数不合法。 "); break;
case-4:printf("读取读取房间现状有误。 "); break;
case-5:printf("房间现状不合法。 "); break;
case-6:printf("读取m失败。 "); break;
case-7:printf("m不合法。 "); break;
}
return0;
}

/*
以下是测试文件内容:假定为test.txt
5
....#
.#.@.
.#@..
#....
.....
4
以下是执行程序后的显示:
第0天宿舍状态:
....#
.#.@.
.#@..
#....
.....
第1天宿舍状态:
...@#
.#@@@
.#@@.
#.@..
.....
第2天宿舍状态:
..@@#
.#@@@
.#@@@
#@@@.
..@..
第3天宿舍状态:
.@@@#
.#@@@
.#@@@
#@@@@
.@@@.
第4天宿舍状态:
@@@@#
.#@@@
.#@@@
#@@@@
@@@@@
19
*/

❸ \t在c语言中是什么意思

在c语言中意思是水平制表符。

在C语言中,像\n 这些都是转义字符,\t在C语言里意思就是:水平制表符,从当前位置移到下一个tab位置。

在学习c语言,我们最先接触到的转义字符很明显是\n。

的意思是:回车换行,将当前位置移到下一行的开头。

的意思是:回车,将当前位置移到本行的开头。

可以感受一下\n和\r的区别所在。

再多说一句,\f的意思是换页,将当前位置移到下一页的开头。

定义

转义字符是很多程序语言、数据格式和通信协议的形式文法的一部分。对于一个给定的字母表,一个转义字符的目的是开始一个字符序列,使得转义字符开头的该字符序列具有不同于该字符序列单独出现时的语义。因此转义字符开头的字符序列被叫做转义序列。

转义序列通常有两种功能。

第一个是编码一个句法上的实体,如设备命令或者无法被字母表直接表示的特殊数据。

第二种功能,也叫字符引用,用于表示无法在当前上下文中被键盘录入的字符(如字符串中的回车符),或者在当前上下文中会有不期望的含义的字符(如C语言字符串中的双引号字符",不能直接出现,必须用转义序列表示)。

在后面那种情况,转义序列是一种由转义字符自身和一个被引用的字符组成的一个二合字母(digraph)情形。

以上内容参考:网络-转义字符

❹ 用C语言写一段自我复制感染的代码,

《中华人民共和国计算机信息系统安全保护条例》中被明确定义,病毒指“编制或者在计算机程序中插入的破坏计算机功能或者破坏数据,影响计算机使用并且能够自我复制的一组计算机指令或者程序代码”。而在一般教科书及通用资料中被定义为:利用计算机软件与硬件的缺陷,由被感染机内部发出的破坏计算机数据并影响计算机正常工作的一组指令集或程序代码 。计算机病毒最早出现在70年代 David Gerrold 科幻小说 When H.A.R.L.I.E. was One.最早科学定义出现在 1983:在Fred Cohen (南加大) 的博士论文 “计算机病毒实验”“一种能把自己(或经演变)注入其它程序的计算机程序”启动区病毒,宏(macro)病毒,脚本(script)病毒也是相同概念传播机制同生物病毒类似.生物病毒是把自己注入细胞之中。
电脑病毒二、计算机病毒的长期性:病毒往往会利用计算机操作系统的弱点进行传播,提高系统的安全性是防病毒的一个重要方面,但完美的系统是不存在的,过于强调提高系统的安全性将使系统多数时间用于病毒检查,系统失去了可用性、实用性和易用性,另一方面,信息保密的要求让人们在泄密和抓住病毒之间无法选择。病毒与反病毒将作为一种技术对抗长期存在,两种技术都将随计算机技术的发展而得到长期的发展。
三、计算机病毒的产生:病毒不是来源于突发或偶然的原因。一次突发的停电和偶然的错误,会在计算机的磁盘和内存中产生一些乱码和随机指令,但这些代码是无序和混乱的,病毒则是一种比较完美的,精巧严谨的代码,按照严格的秩序组织起来,与所在的系统网络环境相适应和配合起来,病毒不会通过偶然形成,并且需要有一定的长度,这个基本的长度从概率上来讲是不可能通过随机代码产生的。现在流行的病毒是由人为故意编写的,多数病毒可以找到作者和产地信息,从大量的统计分析来看,病毒作者主要情况和目的是:一些天才的程序员为了表现自己和证明自己的能力,出于对上司的不满,为了好奇,为了报复,为了祝贺和求爱,为了得到控制口令,为了软件拿不到报酬预留的陷阱等.当然也有因政治,军事,宗教,民族.专利等方面的需求而专门编写的,其中也包括一些病毒研究机构和黑客的测试病毒.
四、计算机病毒的特点,计算机病毒具有以下几个特点:
(1) 寄生性:计算机病毒寄生在其他程序之中,当执行这个程序时,病毒就起破坏作用,而在未启动这个程序之前,它是不易被人发觉的。
(2) 传染性:计算机病毒不但本身具有破坏性,更有害的是具有传染性,一旦病毒被复制或产生变种,其速度之快令人难以预防。传染性是病毒的基本特征。在生物界,病毒通过传染从一个生物体扩散到另一个生物体。在适当的条件下,它可得到大量繁殖,并使被感染的生物体表现出病症甚至死亡。同样,计算机病毒也会通过各种渠道从已被感染的计算机扩散到未被感染的计算机,在某些情况下造成被感染的计算机工作失常甚至瘫痪。与生物病毒不同的是,计算机病毒是一段人为编制的计算机程序代码,这段程序代码一旦进入计算机并得以执行,它就会搜寻其他符合其传染条件的程序或存储介质,确定目标后再将自身代码插入其中,达到自我繁殖的目的。只要一台计算机染毒,如不及时处理,那么病毒会在这台机子上迅速扩散,其中的大量文件(一般是可执行文件)会被感染。而被感染的文件又成了新的传染源,再与其他机器进行数据交换或通过网络接触,病毒会继续进行传染。 正常的计算机程序一般是不会将自身的代码强行连接到其他程序之上的。而病毒却能使自身的代码强行传染到一切符合其传染条件的未受到传染的程序之上。计算机病毒可通过各种可能的渠道,如软盘、计算机网络去传染其他的计算机。当您在一台机器上发现了病毒时,往往曾在这台计算机上用过的软盘已感染上了病毒,而与这台机器相联网的其他计算机也许也被该病毒染上了。是否具有传染性是判别一个程序是否为计算机病毒的最重要条件。 病毒程序通过修改磁盘扇区信息或文件内容并把自身嵌入到其中的方法达到病毒的传染和扩散。被嵌入的程序叫做宿主程序;
(3) 潜伏性:有些病毒像定时炸弹一样,让它什么时间发作是预先设计好的。比如黑色星期五病毒,不到预定时间一点都觉察不出来,等到条件具备的时候一下子就爆炸开来,对系统进行破坏。一个编制精巧的计算机病毒程序,进入系统之后一般不会马上发作,可以在几周或者几个月内甚至几年内隐藏在合法文件中,对其他系统进行传染,而不被人发现,潜伏性愈好,其在系统中的存在时间就会愈长,病毒的传染范围就会愈大。 潜伏性的第一种表现是指,病毒程序不用专用检测程序是检查不出来的,因此病毒可以静静地躲在磁盘或磁带里呆上几天,甚至几年,一旦时机成熟,得到运行机会,就又要四处繁殖、扩散,继续为害。潜伏性的第二种表现是指,计算机病毒的内部往往有一种触发机制,不满足触发条件时,计算机病毒除了传染外不做什么破坏。触发条件一旦得到满足,有的在屏幕上显示信息、图形或特殊标识,有的则执行破坏系统的操作,如格式化磁盘、删除磁盘文件、对数据文件做加密、封锁键盘以及使系统死锁等;
(4) 隐蔽性:计算机病毒具有很强的隐蔽性,有的可以通过病毒软件检查出来,有的根本就查不出来,有的时隐时现、变化无常,这类病毒处理起来通常很困难。
(5)破坏性:计算机中毒后,可能会导致正常的程序无法运行,把计算机内的文件删除或受到不同程度的损坏 。通常表现为:增、删、改、移。
(6)计算机病毒的可触发性:病毒因某个事件或数值的出现,诱使病毒实施感染或进行攻击的特性称为可触发性。为了隐蔽自己,病毒必须潜伏,少做动作。如果完全不动,一直潜伏的话,病毒既不能感染也不能进行破坏,便失去了杀伤力。病毒既要隐蔽又要维持杀伤力,它必须具有可触发性。病毒的触发机制就是用来控制感染和破坏动作的频率的。病毒具有预定的触发条件,这些条件可能是时间、日期、文件类型或某些特定数据等。病毒运行时,触发机制检查预定条件是否满足,如果满足,启动感染或破坏动作,使病毒进行感染或攻击;如果不满足,使病毒继续潜伏。
五、计算机病毒分类,根据多年对计算机病毒的研究,按照科学的、系统的、严密的方法,计算机病毒可分类如下:按照计算机病毒属性的方法进行分类,计算机病毒可以根据下面的属性进行分类:
按照计算机病毒存在的媒体进行分类:
(1)根据病毒存在的媒体,病毒可以划分为网络病毒,文件病毒,引导型病毒。网络病毒通过计算机网络传播感染网络中的可执行文件,文件病毒感染计算机中的文件(如:COM,EXE,DOC等),引导型病毒感染启动扇区(Boot)和硬盘的系统引导扇区(MBR),还有这三种情况的混合型,例如:多型病毒(文件和引导型)感染文件和引导扇区两种目标,这样的病毒通常都具有复杂的算法,它们使用非常规的办法侵入系统,同时使用了加密和变形算法。
按照计算机病毒传染的方法进行分类:
(2)根据病毒传染的方法可分为驻留型病毒和非驻留型病毒,驻留型病毒感染计算机后,把自身的内存驻留部分放在内存(RAM)中,这一部分程序挂接系统调用并合并到操作系统中去,他处于激活状态,一直到关机或重新启动.非驻留型病毒在得到机会激活时并不感染计算机内存,一些病毒在内存中留有小部分,但是并不通过这一部分进行传染,这类病毒也被划分为非驻留型病毒。
(3) 根据病毒破坏的能力可划分为以下几种:
无害型
除了传染时减少磁盘的可用空间外,对系统没有其它影响。
无危险型
这类病毒仅仅是减少内存、显示图像、发出声音及同类音响。
危险型
这类病毒在计算机系统操作中造成严重的错误。
非常危险型
这类病毒删除程序、破坏数据、清除系统内存区和操作系统中重要的信息。这些病毒对系统造成的危害,并不是本身的算法中存在危险的调用,而是当它们传染时会引起无法预料的和灾难性的破坏。由病毒引起其它的程序产生的错误也会破坏文件和扇区,这些病毒也按照他们引起的破坏能力划分。一些现在的无害型病毒也可能会对新版的DOS、Windows和其它操作系统造成破坏。例如:在早期的病毒中,有一个“Denzuk”病毒在360K磁盘上很好的工作,不会造成任何破坏,但是在后来的高密度软盘上却能引起大量的数据丢失。
(4)根据病毒特有的算法,病毒可以划分为:
1. 伴随型病毒,这一类病毒并不改变文件本身,它们根据算法产生EXE文件的伴随体,具有同样的名字和不同的扩展名(COM),例如:XCOPY.EXE的伴随体是XCOPY.COM。病毒把自身写入COM文件并不改变EXE文件,当DOS加载文件时,伴随体优先被执行到,再由伴随体加载执行原来的EXE文件。
2. “蠕虫”型病毒,通过计算机网络传播,不改变文件和资料信息,利用网络从一台机器的内存传播到其它机器的内存,计算网络地址,将自身的病毒通过网络发送。有时它们在系统存在,一般除了内存不占用其它资源。
3. 寄生型病毒 除了伴随和“蠕虫”型,其它病毒均可称为寄生型病毒,它们依附在系统的引导扇区或文件中,通过系统的功能进行传播,按其算法不同可分为:练习型病毒,病毒自身包含错误,不能进行很好的传播,例如一些病毒在调试阶段。
4. 诡秘型病毒 它们一般不直接修改DOS中断和扇区数据,而是通过设备技术和文件缓冲区等DOS内部修改,不易看到资源,使用比较高级的技术。利用DOS空闲的数据区进行工作。
5. 变型病毒(又称幽灵病毒) 这一类病毒使用一个复杂的算法,使自己每传播一份都具有不同的内容和长度。它们一般的作法是一段混有无关指令的解码算法和被变化过的病毒体组成。
六、计算机病毒的发展,在病毒的发展史上,病毒的出现是有规律的,一般情况下一种新的病毒技术出现后,病毒迅速发展,接着反病毒技术的发展会抑制其流传。操作系统升级后,病毒也会调整为新的方式,产生新的病毒技术。它可划分为:
DOS引导阶段
1987年,计算机病毒主要是引导型病毒,具有代表性的是“小球”和“石头”病毒。当时的计算机硬件较少,功能简单,一般需要通过软盘启动后使用.引导型病毒利用软盘的启动原理工作,它们修改系统启动扇区,在计算机启动时首先取得控制权,减少系统内存,修改磁盘读写中断,影响系统工作效率,在系统存取磁盘时进行传播;
1989年,引导型病毒发展为可以感染硬盘,典型的代表有“石头2”;
DOS可执行阶段
1989年,可执行文件型病毒出现,它们利用DOS系统加载执行文件的机制工作,代表为“耶路撒冷”,“星期天”病毒,病毒代码在系统执行文件时取得控制权,修改DOS中断,在系统调用时进行传染,并将自己附加在可执行文件中,使文件长度增加。
1990年,发展为复合型病毒,可感染COM和EXE文件。
伴随、批次型阶段
1992年,伴随型病毒出现,它们利用DOS加载文件的优先顺序进行工作,具有代表性的是“金蝉”病毒,它感染EXE文件时生成一个和EXE同名但扩展名为COM的伴随体;它感染文件时,改原来的COM文件为同名的EXE文件,再产生一个原名的伴随体,文件扩展名为COM,这样,在DOS加载文件时,病毒就取得控制权.这类病毒的特点是不改变原来的文件内容,日期及属性,解除病毒时只要将其伴随体删除即可。在非DOS操作系统中,一些伴随型病毒利用操作系统的描述语言进行工作,具有典型代表的是“海盗旗”病毒,它在得到执行时,询问用户名称和口令,然后返回一个出错信息,将自身删除。批次型病毒是工作在DOS下的和“海盗旗”病毒类似的一类病毒。
幽灵、多形阶段
1994年,随着汇编语言的发展,实现同一功能可以用不同的方式进行完成,这些方式的组合使一段看似随机的代码产生相同的运算结果。幽灵病毒就是利用这个特点,每感染一次就产生不同的代码。例如“一半”病毒就是产生一段有上亿种可能的解码运算程序,病毒体被隐藏在解码前的数据中,查解这类病毒就必须能对这段数据进行解码,加大了查毒的难度。多形型病毒是一种综合性病毒,它既能感染引导区又能感染程序区,多数具有解码算法,一种病毒往往要两段以上的子程序方能解除。
生成器,变体机阶段
1995年,在汇编语言中,一些数据的运算放在不同的通用寄存器中,可运算出同样的结果,随机的插入一些空操作和无关指令,也不影响运算的结果,这样,一段解码算法就可以由生成器生成,当生成器的生成结果为病毒时,就产生了这种复杂的“病毒生成器” ,而变体机就是增加解码复杂程度的指令生成机制。这一阶段的典型代表是“病毒制造机” VCL,它可以在瞬间制造出成千上万种不同的病毒,查解时就不能使用传统的特征识别法,需要在宏观上分析指令,解码后查解病毒。
网络,蠕虫阶段
1995年,随着网络的普及,病毒开始利用网络进行传播,它们只是以上几代病毒的改进.在非DOS操作系统中,“蠕虫”是典型的代表,它不占用除内存以外的任何资源,不修改磁盘文件,利用网络功能搜索网络地址,将自身向下一地址进行传播,有时也在网络服务器和启动文件中存在。
视窗阶段
1996年,随着Windows和Windows95的日益普及,利用Windows进行工作的病毒开始发展,它们修改(NE,PE)文件,典型的代表是DS.3873,这类病毒的机制更为复杂,它们利用保护模式和API调用接口工作,解除方法也比较复杂。 宏病毒阶段1996年,随着Windows Word功能的增强,使用Word宏语言也可以编制病毒,这种病毒使用类Basic语言、编写容易、感染Word文档等文件,在Excel和AmiPro出现的相同工作机制的病毒也归为此类,由于Word文档格式没有公开,这类病毒查解比较困难;
互连网阶段
1997年,随着因特网的发展,各种病毒也开始利用因特网进行传播,一些携带病毒的数据包和邮件越来越多,如果不小心打开了这些邮件,机器就有可能中毒;
爪哇(Java),邮件炸弹阶段
1997年,随着万维网(Wold Wide Web)上Java的普及,利用Java语言进行传播和资料获取的病毒开始出现,典型的代表是JavaSnake病毒,还有一些利用邮件服务器进行传播和破坏的病毒,例如Mail-Bomb病毒,它会严重影响因特网的效率。
七、其他的破坏行为,计算机病毒的破坏行为体现了病毒的杀伤能力。病毒破坏行为的激烈程度取决于病毒作者的主观愿望和他所具有的技术能量。数以万计不断发展扩张的病毒,其破坏行为千奇百怪,不可能穷举其破坏行为,而且难以做全面的描述,根据现有的病毒资料可以把病毒的破坏目标和攻击部位归纳如下: 攻击系统数据区,攻击部位包括:硬盘主引寻扇区、Boot扇区、FAT表、文件目录等。一般来说,攻击系统数据区的病毒是恶性病毒,受损的数据不易恢复。 攻击文件,病毒对文件的攻击方式很多,可列举如下:删除、改名、替换内容、丢失部分程序代码、内容颠倒、写入时间空白、变碎片、假冒文件、丢失文件簇、丢失数据文件等。攻击内存,内存是计算机的重要资源,也是病毒攻击的主要目标之一,病毒额外地占用和消耗系统的内存资源,可以导致一些较大的程序难以运行。病毒攻击内存的方式如下:占用大量内存、改变内存总量、禁止分配内存、蚕食内存等。干扰系统运行,此类型病毒会干扰系统的正常运行,以此作为自己的破坏行为,此类行为也是花样繁多,可以列举下述诸方式:不执行命令、干扰内部命令的执行、虚假报警、使文件打不开、使内部栈溢出、占用特殊数据区、时钟倒转、重启动、死机、强制游戏、扰乱串行口、并行口等。 速度下降,病毒激活时,其内部的时间延迟程序启动,在时钟中纳入了时间的循环计数,迫使计算机空转,计算机速度明显下降。攻击磁盘,攻击磁盘数据、不写盘、写操作变读操作、写盘时丢字节等。 扰乱屏幕显示,病毒扰乱屏幕显示的方式很多,可列举如下:字符跌落、环绕、倒置、显示前一屏、光标下跌、滚屏、抖动、乱写、吃字符等。 键盘病毒,干扰键盘操作,已发现有下述方式:响铃、封锁键盘、换字、抹掉缓存区字符、重复、输入紊乱等。 喇叭病毒,许多病毒运行时,会使计算机的喇叭发出响声。有的病毒作者通过喇叭发出种种声音,有的病毒作者让病毒演奏旋律优美的世界名曲,在高雅的曲调中去杀戮人们的信息财富,已发现的喇叭发声有以下方式:演奏曲子、警笛声、炸弹噪声、鸣叫、咔咔声、嘀嗒声等。 攻击CMOS , 在机器的CMOS区中,保存着系统的重要数据,例如系统时钟、磁盘类型、内存容量等,并具有校验和。有的病毒激活时,能够对CMOS区进行写入动作,破坏系统CMOS中的数据。 干扰打印机,典型现象为:假报警、间断性打印、更换字符等。
八、计算机病毒的危害性,计算机资源的损失和破坏,不但会造成资源和财富的巨大浪费,而且有可能造成社会性的灾难,随着信息化社会的发展,计算机病毒的威胁日益严重,反病毒的任务也更加艰巨了。1988年11月2日下午5时1分59秒,美国康奈尔大学的计算机科学系研究生,23岁的莫里斯(Morris)将其编写的蠕虫程序输入计算机网络,致使这个拥有数万台计算机的网络被堵塞。这件事就像是计算机界的一次大地震,引起了巨大反响,震惊全世界,引起了人们对计算机病毒的恐慌,也使更多的计算机专家重视和致力于计算机病毒研究。1988年下半年,我国在统计局系统首次发现了“小球”病毒,它对统计系统影响极大,此后由计算机病毒发作而引起的“病毒事件”接连不断,前一段时间发现的CIH、美丽莎等病毒更是给社会造成了很大损失。
九、用户计算机中毒的24种症状
1.计算机系统运行速度减慢。
2.计算机系统经常无故发生死机。
3.计算机系统中的文件长度发生变化。
4.计算机存储的容量异常减少。
5.系统引导速度减慢。
6.丢失文件或文件损坏。
7.计算机屏幕上出现异常显示。
8.计算机系统的蜂鸣器出现异常声响。
9.磁盘卷标发生变化。
10.系统不识别硬盘。
11.对存储系统异常访问
12.键盘输入异常。
13.文件的日期、时间、属性等发生变化。
14.文件无法正确读取、复制或打开。
15.命令执行出现错误。
16.虚假报警。
17.换当前盘。有些病毒会将当前盘切换到C盘。
18.时钟倒转。有些病毒会命名系统时间倒转,逆向计时。
19.WINDOWS操作系统无故频繁出现错误。
20.系统异常重新启动。
21.一些外部设备工作异常。
22.异常要求用户输入密码。
23.WORD或EXCEL提示执行“宏”。
24.是不应驻留内存的程序驻留内存。
计算机病毒是在什么情况下出现的?
计算机病毒的产生是计算机技术和以计算机为核心的社会信息化进程发展到一定阶段的必然产物。它产生的背景是:
(1)计算机病毒是计算机犯罪的一种新的衍化形式
计算机病毒是高技术犯罪, 具有瞬时性、动态性和随机性。不易取证, 风险小破坏大, 从而刺激了犯罪意识和犯罪活动。是某些人恶作剧和报复心态在计算机应用领域的表现;
(2)计算机软硬件产品的脆弱性是根本的技术原因
计算机是电子产品。数据从输入、存储、处理、输出等环节, 易误入、篡改、丢失、作假和破坏;程序易被删除、改写;计算机软件设计的手工方式, 效率低下且生产周期长;人们至今没有办法事先了解一个程序有没有错误, 只能在运行中发现、修改错误, 并不知道还有多少错误和缺陷隐藏在其中。这些脆弱性就为病毒的侵入提供了方便;

❺ c语言属于什么型

一、编译型语言

优点:运行速度快,代码效率高,编译后的程序不可修改,保密性较好。

缺点:代码需要经过编译方可运行,可移植性差,只能在兼容的操作系统上运行 。

二、解释型语言

优点:可移植性较好,只要有解释环境,可在不同的操作系统上运行。

缺点:运行需要解释环境,运行起来比编译的要慢,占用资源也要多一些,代码效率低,代码修改后就可运行,不需要编译过程。

(5)c型语言中的感染扩展阅读:

编译型语言:程序在执行之前需要一个专门的编译过程,把程序编译成 为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。程序执行效率高,依赖编译器,跨平台性差些。如C、C++、Delphi等。而相对的,解释性语言编写的程序不进行预先编译,以文本方式存储程序代码。在发布程序时,看起来省了道编译工序。但是在运行程序的时候,解释性语言必须先解释再运行。

❻ C语言中的char具体用法

char a[]如果从定义看就是存储着char类型的数组,而char* b就是一个char类型的指针。我们把第一个叫做字符数组,第二个叫做字符指针。

用法是字符数组在初始化的时候,是把字符串里面的元素复制到数组里面,包括'',而字符指针则是指向一个常量,所以,不能用b[1] = 'c';这种方式修改b这个字符串,常量是不能更改的,不过可以让它指向别的字符地址。

(6)c型语言中的感染扩展阅读

关于char占几个字节的问题

1、“字节”byte,“位”是bit ;

2、1 byte = 8 bit ;

char 在Java中是2个字节。Java采用unicode,2个字节(16位)来表示一个字符。

char类型赋值

char a = 'a'; //任意单个字符,加单引号。

char a = '中';//任意单个中文字,加单引号。

char a = 111;//整数。0~65535。十进制、八进制、十六进制均可。输出字符编码表中对应的字符。

注:char只能放单个字符。

char运算

char类型却是可以运算的因为char在ASCII等字符编码表中有对应的数值。

在Java中,对char类型字符运行时,直接当做ASCII表对应的整数来对待。

❼ 生活中常见的病毒有哪些

AV终结者(名称很杂,无统一标准)
该病毒利用了IFEO重定向劫持技术,使大量的杀毒软件和安全相关工具无法运行;会破坏安全模式,使中毒用户无法在安全模式下查杀病毒;会下载大量病毒到用户计算机来盗取用户有价值的信息和某些帐号;能通过可移动存储介质传播。中毒现象:
1.生成很多8位数字或字母随机命名的病毒程序文件,并在电脑开机时自动运行。
2.绑架安全软件,中毒后会发现几乎所有杀毒软件,系统管理工具,反间谍软件不能正常启动。即使手动删除了病毒程序,下次启动这些软件时,还会报错。
3.不能正常显示隐藏文件,其目的是更好的隐藏自身不被发现。
4.禁用windows自动更新和Windows防火墙,这样木马下载器工作时,就不会有任何提示窗口弹出来。为该病毒的下一步破坏打开方便之门。
5.破坏系统安全模式,使得用户不能启动系统到安全模式来维护和修复
6.当前活动窗口中有杀毒、安全、社区相关的关键字时,病毒会关闭这些窗口。假如你想通过浏览器搜索有关病毒的关键字,浏览器窗口会自动关闭。
7.在本地硬盘、U盘或移动硬盘生成autorun.inf和相应的病毒程序文件,通过自动播放功能进行传播。这里要注意的是,很多用户格式化系统分区后重装,访问其它磁盘,立即再次中毒,用户会感觉这病毒格式化也不管用。
8.病毒程序的最终目的是下载更多木马、后门程序。用户最后受损失的情况取决于这些木马和后门程序。

“熊猫烧香”(Worm.Nimaya)
该病毒采用“熊猫烧香”头像作为图标,诱使用户运行。该变种会感染用户计算机上的EXE可执行文件,被病毒感染的文件图标均变为“熊猫烧香”。同时,受感染的计算机还会出现蓝屏、频繁重启以及系统硬盘中数据文件被破坏等现象。该病毒会在中毒电脑中所有的网页文件尾部添加病毒代码。一些网站编辑人员的电脑如果被该病毒感染,上传网页到网站后,就会导致用户浏览这些网站时也被病毒感染。目前多家着名网站已经遭到此类攻击,而相继被植入病毒

灰鸽子(Trojan.Huigezi)
灰鸽子是国内一款着名后门病毒。2007年2月21日,灰鸽子2007beta2版本发布。该版本可以对远程计算机进行如下操作:编辑注册表;上传下载文件;查看系统信息、进程、服务;查看操作窗口、记录键盘、修改共享、开启代理服务器、命令行操作、监视远程屏幕、操控远程语音视频设备、关闭、重启机器等。

蠕虫“小浩”(WormXiaoHao.A)
被感染后文件图标变“浩”字,与“熊猫烧香”相似.该蠕虫和之前出现的蠕虫“熊猫烧香”具有相似的特点,都可以感染可执行文件(后缀名为.EXE)。与其不同的是,被感染后的可执行文件将无法正常运行和恢复。蠕虫运行后,会在受感染计算机系统中的每个磁盘根目录下释放两个病毒文件,使文件感染成为新的病毒文件,同时被感染后的文件图标变为一个“浩”字的图样。另外,蠕虫还会利用Windows系统的自动播放功能并结合U盘来进行病毒传播。一旦计算机双击染有该蠕虫的U盘,系统就会受到感染

威金蠕虫(Worm.Viking)
该病毒集文件型病毒、蠕虫病毒、病毒下载器于一身,传播能力非常强。采用Delphi语言编写,并经过加壳处理.在Windows目录下释放病毒文件。修改注册表,实现开机自启。在每个被感染过的文件目录下生成_desktop.ini文件,文件里标记着病毒发作日期。感染用户计算机上的可执行文件,并通过密码字典破解弱密码,利用网络共享感染局域网内的其它计算机,具有很强的破坏性。当用户的计算机被“威金”变种atk感染后,会导致大部分应用程序不能正常使用。

新欢乐时光(Script.RedLof )感染这个病毒后有两个明显的表现:a.在每个目录中都会生成folder.htt(带毒文件)和desktop.ini(目录配置文件);b.电脑运行速度明显变慢,在任务列表中可以看到有大量的Wscript.exe程序在运行。 用VBS编写的多变形、加密病毒,感染扩展名.html, .htm, .asp, .php, .jsp, .htt和.vbs文件,同时该病毒会大量生成folder.htt和desktop.ini,并在%windir%System中生成一个名字叫Kernel.dll的文件(Windows 9x/Me)或kernel32.dll(Windows NT/2000),修改.dll文件的打开方式,感染Outlook的信纸文件。

ANI蠕虫 (Trojan-Downloader.Win32.Ani)
ANI病毒是一个Win32平台下的感染型蠕虫,可感染本地磁盘、可移动磁盘及共享目录中大小在10K---10M之间的所有.exe文件,感染扩展名为.ASP、.JSP、PHP、HTM、ASPX、HTML的脚本文件,并可连接网络下载其他病毒。

MSN骗子(Worm.msn.funny)
病毒会通过QQ和MSN发送大量的垃圾信息和“Funny.exe”病毒文件,同时用病毒文件替换系统文件,造成某些用户重启机器之后无法正常开机,给用户带来了非常大的困扰。

QQ尾巴(Worm.QQTailEKS)
该病毒可通过QQ发送消息自动传播,而且病毒运行后会自动更新,并不断弹出一些垃圾网页.

爱情后门(Worm.Lovgate)
一个集蠕虫后门黑客于一身的病毒。当病毒运行时,将自己复制到windows目录下,文件名为:WinRpcsrv.exe并注册成系统服务。然后把自己分别复制到system目录下,文件名为syshelp.exe,WinGate.exe并在注册表run项中加入自身键值。病毒利用ntdll提供的api找到LSASS进程,并对其殖入远程后门代码。(该代码,将响应用户tcp请求建方一个远程shell进程。win9x为command.com,NT,WIN2K,WINXP为cmd.exe)之后病毒将自身复制到windows目录并尝试在win.ini中加入run=rpcsrv.exe。并进入传播流程。

马吉斯(Worm.Magistr)
病毒是由C语言编写的感染型病毒,感染后缀名为EXE的32位PE可执行程序,病毒源的大小为40KB。病毒源文件为boot.exe,由用户从U盘上提取。病毒感染文件时,会将原文件最后一个节增大,将病毒代码写入被感染文件的代码节,修改入口点指向病毒代码并保存原来的入口点地址,然后将被覆盖的原来文件的代码、病毒的dll、sys文件压缩保存在文件最后一个节中增大的地方。被感染的文件运行时,病毒代码先被运行,释放C:\WINNT\linkinfo.dll和%SystemRoot%\system32\drivers\IsDrv118.sys并加载,然后调用linkinfo.dll的序号为101的函数。病毒代码最后会恢复原文件被覆盖的代码并跳回原文件的入口开始运行原来的文件。

❽ 在C语言中 char的用法是怎么用的啊

在C语言中,char变量为一个字节,8位,signed char表示的范围:-128~127【-128在内存中的二进制表示为1000 0000,127在内存中的表示为0111 1111】;unsign char表示的范围:0000 0000~1111 1111,即0~255;注意:整数在内存中是以补码存取的,正数的补码:等于自己,负数的补码:取反加1,例如:127在内存中表示为0111 1111, -127在内存中表示为(0111 1111)+1=1000 0001; 假定某内存单元p的内容是1111 1111,那么它一定是255吗?实际上取决于你的代码是要把它看成有符号还是无符号数,如果是无符号则表示255,如果是有符号则表示-1【对于有符号数,最高位为符号位,1表示负,0表示正】:
signed char c=*p; //c=-1
unsigned char c=*p;//c=255
char是C语言整型数据中比较古怪的一个,其它的如int/long/short等不signed/unsigned时都默认是signed。虽然char在标准中是unsigned(因为char类型提出的初衷是用来表示ascii码,ascii码的范围是0~127),但实际情况中究竟是signed还是unsigned取决于编译器。当你不确定编译器的默认char类型时,就用显示声明:signedchar和unsigned char

❾ c语言的int型数据范围和内存中存储是什么

1、nt型为带符号整数类型,对于16位编译器,int占2字节8位;对于32位和64位编译器,int型占4字节32位。不同的占用空间,int型的范围也不同:2字节时,int 范围为-32768~32767;4字节时,int范围为-2147483648~2147483647。

无论是哪种存储方式,均是最高位为符号位,0代表正数,1代表负数。剩余位存储实际值。

2、字符是指计算机中使用的字母、数字、字和符号,包括:1、2、3、A、B、C、~!·#¥%??—*()——+等等。在 ASCII 编码中,一个英文字母字符存储需要1个字节。在 GB 2312 编码或 GBK 编码中,一个汉字字符存储需要2个字节。

3、字符型数据在内存中储存的是它的ASCII码值,它是一个字节,所有数据类型在内存中都是以0和1代码二进制储存的,这个原则不会变。

4、在UTF-8编码中,一个英文字母字符存储需要1个字节,一个汉字字符储存需要3到4个字节。在UTF-16编码中,一个英文字母字符或一个汉字字符存储都需要2个字节(Unicode扩展区的一些汉字存储需要4个字节)。在UTF-32编码中,世界上任何字符的存储都需要4个字节。

5、char是C/C++整型数据之一,其它的如int/long/short等不指定signed/unsigned时都默认是signed,char在标准中是unsigned,编译器可以实现为带符号的,也可以实现为不带符号的,有些编译器如pSOS的编译器,还可以通过编译开关来指定它是有符号数还是无符号数。