Sma*_*ash 2 c++ modulo c-preprocessor
int temp1,temp2,temp3;
temp1 = 199;
temp2 = 200;
temp3 = 199%temp2;
CString txt;
txt.Format(_T("temp3 = %d"),temp3);
AfxMessageBox(txt);
Run Code Online (Sandbox Code Playgroud)
按预期输出199.
#define WIDTH 100
#define BUFFERWIDTH 200
int temp1,temp2,temp3;
temp1 = 199;
temp2 = BUFFERWIDTH;
temp3 = 199%BUFFERWIDTH;
CString txt;
txt.Format(_T("temp3 = %d"),temp3);
AfxMessageBox(txt);
Run Code Online (Sandbox Code Playgroud)
按预期输出199.
#define WIDTH 100
#define BUFFERWIDTH 2*WIDTH
int temp1,temp2,temp3;
temp1 = 199;
temp2 = BUFFERWIDTH;
temp3 = 199%BUFFERWIDTH;
CString txt;
txt.Format(_T("temp3 = %d"),temp3);
AfxMessageBox(txt);
Run Code Online (Sandbox Code Playgroud)
输出是100 ...
只是想知道是什么导致这个:)