01/10/2018, 17:02

Cú pháp vòng for (x : y) lạ trong C++

for (char &c : st1)
{
countSt[c - ‘a’]++;
}

ai có thể giải thích giúp mình vòng lặp for này được không ạ:

mình không phải là chuyên về CNTT nhưng đang tìm hiểu về lập trình nên có gì mong mọi người chỉ giúp đừng cười
Xin cảm ơn mọi người!

HK boy viết 19:14 ngày 01/10/2018

Cái này là cú pháp range-based for, có từ phiên bản C++11.

https://en.cppreference.com/w/cpp/language/range-for

Dịch một cách đơn giản thì câu lệnh đó có nghĩa là

for từng kí tự c trong st1 {
    countSt[c - 'a']++;
}

Tại sao có dấu & bên cạnh c?

stackoverflow.com
Nawaz

C++11 range based loop: get item by value or reference to const

c++, c++11
answered by Nawaz on 03:27PM - 02 Mar 13

Chọn <tên kiểu> &<biến> khi bạn muốn xử lí các phần tử gốc và có thể thay đổi chúng.

String có thể thay đổi được nội dung.

Ninh Nguyễn Văn viết 19:06 ngày 01/10/2018

Cảm ơn bạn rất nhiều

Bài liên quan
0