Thắc mắc về toán tử = trong if

cho e hỏi cái dòng đỏ đó là sao ạ? nếu == thì nó chạy không chính xác ạ, còn 1 dấu thì nó chạy ngon lành, em cảm ơn ạ!!

Phải là :point_down:

        if (s1[i] == s2[j]) {
            j++;
            if (j == s2.length()) {
                count++;
            }
        } else {
            j = 0;
        }
5 Likes

== là toán tử so sánh bằng.
= là toán tử gán.
lệnh j = s2.length() trả về kết quả j sau khi j được gán s2.length()

8 Likes

ghi if(j = s2.length()) chả khác gì ghi if(true) cả

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