我正在尝试创建一个简单的应用程序,在按下特定数字时播放声音,但无论我输入什么,它都会出于某种奇怪的原因播放第一首歌。
#include <stdio.h>
#include <Windows.h>
#include "MMsystem.h"
void main(void){
printf("\t\t\t\t\t\tCh00se A M3m3\n\n");
printf("\t\t\t\t\t\t1.Quick Maths\n");
printf("\t\t\t\t\t\t2.Crippling Deprresion");
int MemeNumber;
scanf_s("%d", &MemeNumber);
if (MemeNumber = "1")
{
PlaySound(TEXT("BigShaq.wav"), NULL, SND_SYNC);
}
if (MemeNumber = '2')
{
PlaySound(TEXT("CripplinD.wav"), NULL, SND_SYNC);
}
getch();
}
答案 0 :(得分:2)
if (MemeNumber = "1")
int
,"1"
为char*/string
=
是一项任务,而非比较。 if (MemeNumber = '2')
int
,'2'
是char。=
是一项不是比较的作业。尝试if (MemeNumber == 1)
和if (MemeNumber == 2)
。另外:看一下switch语句。它有助于简化代码。
注意:如果您在编译时打开了所有警告,编译器会为您突出显示所有这些警告。