- 245 名前:デフォルトの名無しさん mailto:sage [2007/08/22(水) 15:56:45 ]
- gets を使うことでバッファオーバフローのサンプルコードを出せる
反面教師のようなところが利点 #include<stdio.h> int main(void){ int a=3; char buf[8]; int b=5; int diffa, diffb, diff=-1; int i; diffa=(char*)&a-buf; diffb=(char*)&b-buf; if(diffa>0 && diffa<50) diff=diffa; if(diff>diffb && diffb>0 && diffb<50) diff=diffb; if(diff<0) return 0; printf("a=%d b=%d\n", a, b); printf("Input next string\n"); for(i=0;i<diff;i++) putchar('*'); printf("x\n"); gets(buf); printf("a=%d b=%d\n", a, b); return 0; }
|

|