ping 的死亡循环的代码是什么啊

供稿:hz-xin.com     日期:2024-03-29
告诉我这个代码为什么死循环了?

已经改好了,只要把函数中C++中的引用改成C语言中的指针就可以了!初学者能看懂这段代码不错了,还有数据结构中的栈呢,(代码的逻辑结构没有改动)你试试
#include #include #define STACK_INIT_SIZE 100#define STACKINICREMENT 10#define ERROR -1#define OVERFLOW -2#define OK 1typedef int status;typedef struct { int *base; int *top; int stacksize;}Sqstack;status Initstack(Sqstack *S){ (*S).base=(int *)malloc(STACK_INIT_SIZE *sizeof(int)); if(!(*S).base)exit(OVERFLOW); (*S).top=(*S).base; (*S).stacksize=STACK_INIT_SIZE; return OK;}status Push(Sqstack *S,int e){ if((*S).top-(*S).base>=(*S).stacksize){ (*S).base=(int *)realloc((*S).base,((*S).stacksize+STACKINICREMENT)*sizeof (int)); if(!(*S).base)exit (OVERFLOW); (*S).top=(*S).base+(*S).stacksize; (*S).stacksize+=STACKINICREMENT;} *(*S).top++=e; return OK;}status Pop(Sqstack *S,int &e){ if ((*S).top==(*S).base)return 0; e=*(--(*S).top); return OK;}status Stackempty(Sqstack S){ if(S.top == S.base) return true; else return false;}int main(){ Sqstack S; int n; int e; int m; Initstack(&S); printf("请输入你所要转换的十进制数:"); scanf("%d",&n); printf("你所选择的进制(1到10之间):"); scanf("%d",&m); printf("%d,%d",n,m); while(n!=0){ e=n%m; Push(&S,e); n=n/m; } printf("你所得到的该进制数:"); while (!Stackempty(S)){ Pop (&S,e); printf("%d",e); } printf("
");//这句加上结果会看清楚点return 0;}

我晕,外循环用p指针,外循环p指针在加,内循环也用p指针,内循环p指针在减一直到0,这样外循环就无法达到p<a+N了,所以肯定是死循环了。

ping -l 65500 -t ***.***.***.*** PING的最大包了 这就叫死亡之PING

不过一台机子的死亡之PING被PING的机子是不会死亡的, 呵呵

现在单台电脑去PING另外一台电脑,是没有什么效果的,
要大量的电脑去同时PING一台电脑才可以

被ping的机器不断被ping是会被检测出ip的,会被攻击

好像可以不断的给对方发数据包

ping -l 65500 -t (IP地址)。不知道你想干嘛,一台机子没什么用