-1
#include <stdio.h>
#include <stdlib.h>
#include <ctime>
void main()
{
unsigned _int8 MinNum;
unsigned _int8 MaxNum;
unsigned _int8 Guess;
unsigned _int8 MagicNum;
printf("Please enter the minimum value (0 - 255): ");
scanf("%d", &MinNum);
printf("Please enter the maximum value (%d - 255): ", MinNum);
scanf("%d", &MaxNum);
printf("Guess a number between %d - %d", MinNum, MaxNum);
scanf("%d", &Guess);
srand((unsigned)time(NULL));
MagicNum = (rand() % MaxNum + MinNum);
if (Guess > MagicNum)
{
printf("You guessed too high.");
}
else if (Guess < MagicNum)
{
printf("You guessed too low.");
}
else
{
printf("You win.");
}
}
此代碼給了我標題中指定的錯誤。我環視了一下互聯網,發現這個錯誤是由於你分配給一個變量的數據超過了數據限制,但不知道它超出了MinNum的限制。運行時檢查失敗#2 - 變量'MinNum'周圍的堆棧已損壞
打開編譯器警告(如果已經存在的話,只需要注意它們)。他們會讓問題變得明顯。 – 2014-10-16 21:35:08