Không hiểu expression c code này có nghĩa gì

tui không chuyên về c code, nhưng tui cần convert một đoạn c code mà không hiểu +ofstMax, -ofstMax trong biểu thức so sánh bên dưới có nghĩa gì

float ofstMax;
float ofstX ,ofstY ;
(...do something...)
if((ofstX > +ofstMax) && ((ic+1) < (h-1))) {ic +=1;}
if((ofstX < -ofstMax) && ((ic-1) >  0   )) {ic -=1;}
if((ofstY > +ofstMax) && ((jc+1) < (w-1))) {jc +=1;}
if((ofstY < -ofstMax) && ((jc-1) >  0   )) {jc -=1;}

Tui thử print ra thì thấy giá trị nó bằng nhau hết

printf("\nofstMax=%f; +ofstMax=%f",ofstMax,+ofstMax); = 0.6, 0.6
1 Like

Hi terrypaton.
Không nhầm là phép đổi dấu. Có thể dùng toán tử trên bit cho nhanh.

3 Likes

Viết vậy cho thẳng cột, đẹp mắt thôi :slight_smile: +x tức là upcast lên, mà float thì đâu cần upcast (kiểu nguyên mới cần thôi) nên vẫn y nguyên.

Nhưng nếu x là char, short thì +x là int.

2 Likes

ừ ha, mình quên mất đơn giản vậy mà mình lại quên
Mấy hôm nay đọc mấy bài về con trỏ bên c code để convert , nên cứ nghĩ nó là phép toán liên quan con trỏ. hay phép toán cao siêu gì đấy.

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?