C 언어로 재고 계산기를 만들고 싶습니다. 아직 진행 중입니다. Microsoft Visual Studio 2015를 사용하여 만듭니다.문자열이 작동하지 않는 경우
문자열 (예 : "refrigerator"
)을 입력하고 printf
을 사용하여 인쇄하면 컴퓨터에서 인쇄 할 수 있습니다. 그러나 그 문자열을 if
에 넣으면 계속할 수 없습니다. 에서 진행 정지 : 그 후
scanf_s("%s",stock1,sizeof(stock1));
fflush(stdin);
내가 입력 "refrigerator"
if
문은 나오고 있지 않은 경우. 당신이 C 언어를 사용하고 있기 때문에
int fan, refrigerator, lpg;
int menu;
char stock1[15], stock2[15];
int total1, total2, totalstock;
int check;
printf("Type the item that you want to add\n");
scanf_s("%s",stock1, sizeof(stock1));
fflush(stdin);
if (stock1 == "refrigerator")
{
printf("How many item would you like to add?\n");
scanf_s("%d", &total1);
fflush(stdin);
}
getchar();
return 0;
}
'strcmp'를 사용하십시오. '=='를 사용하여 C 문자열을 비교할 수 없습니다. – HolyBlackCat
:'scanf' 계열의 모든 함수에서 리턴 값을 확인하십시오. 만약 당신이 그렇게하지 않는다면, 좀 더 안전한'scanf_s' 패밀리를 사용하는 것은 거의 요지가 없습니다. '(scanf_s ("% d", & total1)! = 1) {/ * some error handling * /}' –
'fflush stdin);'정의되지 않은 동작을 호출합니다. 입력 스트림을'fflush '할 수 없습니다. – Olaf