Command Prompt ตาย....

เริ่มโพสต์โดย "นัท"ณัฐพล, 30 มิ.ย. 2007, 19:22 น.

0 สมาชิก และ 1 บุคคลทั่วไป กำลังเปิดอ่านโพสต์นี้

WuTtY

อ้างคำพูดจาก: "นัท"ณัฐพล เมื่อ 30 มิ.ย. 2007, 19:22 น.
พอใช้ cmd ป้อนค่าเข้าไป มันให้Dont' send กะ Send ก็ไม่เกิดอะไรขึ้น :39:

ไม่รู้เป็นที่โคดหรือโปรแกรม :31: ดูให้ทีครับ :46:

#include <stdio.h>
#include <stdlib.h>
int a;
int main()
{
      for(a=1;a!=0;a++)
      {
  int a;
  int b;
   scanf("%d",a);
  scanf("%d",b);
  printf("\n%d - %d",a/b,a%b);
}
return 0;
}

มัน loop infinity นิครับ code ล่าง ๆ ก็ loop infinity เหมือนกัน เพราะ a=1 แล้วเพิ่มขึ้นเรื่อย ๆ ทำำไปเรื่อยๆ ถ้า a ไม่เท่่ากับ 0 ลองแบบ loop ธรรมดาออกหรือเปล่าครับ อาจจะเป็นที่ buffer ใน cmd มันไม่ยอม flood ออกท่า stdout ก็ได้นะ มันคงรอเต็ม ไม่น่าใจเหมือนกัน

ยุนเอ



ได้ครับ เพราะมันจะไปรอค่า ที่ scanf

แต่ code นี้ไม่มีตัวเบรคลูปเท่านั้นเอง ซึ่งสามารถออกเองด้วย Ctrl- อะไรซักอย่าง  :08: c, v, x เนี้ยหละ
เราจะต้องการอะไรมากมายไปกว่า อะไรมากมาย

WuTtY

ลืมดู scanf ไปแฮะ  :34:

ยุนเอ



loop infinity ก็รันได้นะครับ
เราจะต้องการอะไรมากมายไปกว่า อะไรมากมาย

WuTtY

#19
เดาใหม่  :30:

ค่าที่ป้อนเป็นอะไรครับ b เป็น 0 หรือเปล่า แต่ปกติแล้วถ้า divide by zero มันก็จะ ฟ้อง error นะไม่น่าจะตายแบบนี้

edit : เห็นแล้วว่าใส่เลข 5 :) งั้นก็คงไม่ divide by zero ล่ะ

ลองแก้ code เป็นแบบนี้แทนได้มั้ยครับ

scanf("%d",&a);
scanf("%d",&b);

เพราะ parameter ตัวที่ 2 ของ scanf เป็น pointer ครับ ถ้าใส่ a เฉย ๆ มันคือ เอาค่าที่ a เก็บอยู่มาเป็น address ที่จะเก็บครับ ซึ่งถ้าไม่มีการ init ค่ามันไว้ก่อน มันอาจจะ point ออกไปที่ memory อื่น นอกโปรแกรมมันแล้วทำให้ตายครับ

ยุนเอ

อ้างคำพูดจาก: WuTtY เมื่อ 03 ก.ค. 2007, 00:13 น.
เดาใหม่  :30:

ค่าที่ป้อนเป็นอะไรครับ b เป็น 0 หรือเปล่า แต่ปกติแล้วถ้า divide by zero มันก็จะ ฟ้อง error นะไม่น่าจะตายแบบนี้

edit : เห็นแล้วว่าใส่เลข 5 :) งั้นก็คงไม่ divide by zero ล่ะ

ลองแก้ code เป็นแบบนี้แทนได้มั้ยครับ

scanf("%d",&a);
scanf("%d",&b);

เพราะ parameter ตัวที่ 2 ของ scanf เป็น pointer ครับ ถ้าใส่ a เฉย ๆ มันคือ address มันอาจจะ point ออกนอกไปที่ memory อื่น นอกโปรแกรมมันแล้วทำให้ตายครับ

&a  :25:

ลืมไปเลย
เราจะต้องการอะไรมากมายไปกว่า อะไรมากมาย

เบียร์

#include <stdio.h>
#include <stdlib.h>
แก้เป็นแบบนี้ work แฮะครับ  :17:


int main()
{
    while(1)
    {
      int a;
      int b;
      scanf("%d",&a);
      scanf("%d",&b);
      printf("\n%d - %d",a/b,a%b);
     }
     return 0;
}

ป.ล. : compile & run ด้วย Dev-C++ 4.9.9.2 ครับ

"นัท"ณัฐพล

อ๋อ  :31:
ลืมตั้งแต่แรก และก็ไม่มีใครหาเจอ  :31:  :38:

ผ่านแล้ว :03:

WuTtY

ดีใจด้วยครับ


ปล. ปั่นไป 1 ที

SMF 2.1.7 © 2026, Simple Machines