// Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ
while (pbeg != pend && *pbeg >= 0)
++pbeg;
ΠΠΎΠ΄ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π²ΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ ΡΠΈΠΏΠ° int ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ pbeg ΠΈ pend. Π£ΠΊΠ°Π·Π°ΡΠ΅Π»Ρ pbeg ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π° arr, a pend β Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ. Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠΈΠΊΠ»Π° while ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ pend, ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ Π»ΠΈ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ pbeg. ΠΡΠ»ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ pbeg Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΡΠ»ΠΈ ΡΡΠΎ ΡΠ°ΠΊ, ΡΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π»ΠΎΠΆΠ½ΠΎ ΠΈ ΡΠΈΠΊΠ» Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ΠΈΡΡΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ.
Π£ΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ "ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ" Ρ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π²Π΅Π΄Π΅Ρ ΡΠ΅Π±Ρ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈΡΠ΅ΡΠ°ΡΠΎΡ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½Π½ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ end() Π²Π΅ΠΊΡΠΎΡΠ°. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π½Π΅Π»ΡΠ·Ρ Π½ΠΈ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ, Π½ΠΈ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ Π΅Π³ΠΎ ΠΏΡΠΈΡΠ°ΡΠ΅Π½ΠΈΠ΅.
ΠΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈΠ£ΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ, ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π² ΡΠ°Π±Π». 3.6 ΠΈ 3.7. ΠΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΠΈΠ½ΠΊΡΠ΅ΠΌΠ΅Π½ΡΠ°, ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π²ΡΡΠΈΡΠ°Π½ΠΈΡ Π΄Π²ΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ, ΠΈΠΌΠ΅ΡΡ Π΄Π»Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠΎ ΠΆΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΡΠΎ ΠΈ Π΄Π»Ρ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΠΎΠ².
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ (ΠΈΠ»ΠΈ Π²ΡΡΠΈΡΠ°Π½ΠΈΡ) ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ (ΠΈΠ»ΠΈ ΠΈΠ· Π½Π΅Π³ΠΎ) ΡΠ²Π»ΡΠ΅ΡΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π½Π° Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ·ΠΈΡΠΈΠΉ Π²ΠΏΠ΅ΡΠ΅Π΄ (ΠΈΠ»ΠΈ Π½Π°Π·Π°Π΄) ΠΎΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ.
constexpr size_t sz = 5;
int arr[sz] = {1,2,3,4,5};
int *ip = arr; // ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ int *ip = &arr[0]
int *ip2 = ip + 4; // ip2 ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° arr[4], ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π² arr
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ 4 ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ip Π±ΡΠ΄Π΅Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΉ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ Π½Π° ΡΠ΅ΡΡΡΠ΅ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ Π΄Π°Π»Π΅Π΅ ΠΎΡ ΡΠΎΠ³ΠΎ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ Π² Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ip.
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ (ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠ½ΡΠ°) Π² ΡΠΎΠΌ ΠΆΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π΅:
// ok: arr ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π² ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° Π΅Π³ΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ;
// p ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠ½ΡΠ° arr
int *p = arr + sz; // ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΡΠΌΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ - Π½Π΅ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ
// ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ!
int *p2 = arr + 10; // ΠΎΡΠΈΠ±ΠΊΠ°: arr ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ 5 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²;
// Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ p2 Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ
ΠΡΠΈ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ arr ΠΈ sz ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ arr Π² ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π° arr. ΠΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ sz ΠΊ ΡΡΠΎΠΌΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΏΠΎΠ·ΠΈΡΠΈΡ sz (Ρ.Π΅. Π½Π° ΠΏΠΎΠ·ΠΈΡΠΈΡ 5) ΡΡΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΎΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠ½ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π° arr. ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ ΠΎΠ΄Π½Ρ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠΈΠ±ΠΊΠΎΠΉ, Ρ ΠΎΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΠ°ΠΊΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ Π½Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ.
ΠΠΎΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΠ°ΠΌ, Π²ΡΡΠΈΡΠ°Π½ΠΈΠ΅ Π΄Π²ΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π΄Π°Π΅Ρ Π΄ΠΈΡΡΠ°Π½ΡΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ. Π£ΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² ΡΠΎΠΌ ΠΆΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π΅:
auto n = end(arr) - begin(arr); // n - 5, ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²
// ΠΌΠ°ΡΡΠΈΠ²Π° arr
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΡΠΈΡΠ°Π½ΠΈΡ Π΄Π²ΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ ΠΈΠΌΠ΅Π΅Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΡΠΉ ΡΠΈΠΏ ptrdiff_t. ΠΠ°ΠΊ ΠΈ ΡΠΈΠΏ size_t, ΡΠΈΠΏ ptrdiff_t ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΠΈΠ½ΠΎΠ·Π°Π²ΠΈΡΠΈΠΌΡΠΌ ΡΠΈΠΏΠΎΠΌ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ cstddef. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²ΡΡΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠΈΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΡΠΈΠΏ ptrdiff_t β Π·Π½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΉ.
ΠΠ»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ (ΠΈΠ»ΠΈ ΠΏΠΎΠ·ΠΈΡΠΈΡ Π·Π° ΠΊΠΎΠ½ΡΠΎΠΌ) ΠΌΠ°ΡΡΠΈΠ²Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° arr ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π±ΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
int *b = arr, *Π΅ = arr + sz;
while (b < e) {
// ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ *b
++b;
}
ΠΠ΅Π»ΡΠ·Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° Π΄Π²Π° Π½Π΅ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°.
int i = 0, sz = 42;
int *p = &i, *Π΅ = &sz;
// Π½Π΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ: p ΠΈ Π΅ Π½Π΅ ΡΠ²ΡΠ·Π°Π½Ρ; ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π±Π΅ΡΡΠΌΡΡΠ»Π΅Π½Π½ΠΎ!
while (p < Π΅)
Π₯ΠΎΡΡ Π½Π° Π½Π°ΡΡΠΎΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΌΡΡΠ» ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈ Π½Π΅ΡΡΠ΅Π½, Π½ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡ ΡΠ°ΠΊΠΆΠ΅ Π΄Π»Ρ Π½ΡΠ»Π΅Π²ΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ (ΡΠΌ. ΡΠ°Π·Π΄Π΅Π» 2.3.2) ΠΈ Π΄Π»Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡΡ, Π½Π΅ ΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ. Π ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΡΠΎΡ ΠΆΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΠΎΡΠ»Π΅ Π½Π΅Π³ΠΎ. ΠΡΠ»ΠΈ p β Π½ΡΠ»Π΅Π²ΠΎΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ, ΡΠΎ ΠΊ Π½Π΅ΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ (ΠΈΠ»ΠΈ Π²ΡΡΠ΅ΡΡΡ) ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ΅ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ (ΡΠΌ. ΡΠ°Π·Π΄Π΅Π» 2.4.4) ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ 0. ΠΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π²ΡΡΠ΅ΡΡΡ Π΄Π²Π° Π½ΡΠ»Π΅Π²ΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΈΠ· Π΄ΡΡΠ³ Π΄ΡΡΠ³Π°, ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ 0.
ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Ρ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈΠ Π΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ. ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΡΠΎ ΠΊ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ:
int ia[] = {0,2,4,6,8}; // ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· 5 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΈΠΏΠ° int
int last = *(ia + 4); // ok: ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ last Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ
// ia[4], Ρ.Π΅. 8
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ *(ia + 4) Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Π°Π΄ΡΠ΅Ρ ΡΠ΅ΡΠ²Π΅ΡΡΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΏΠΎΡΠ»Π΅ ia ΠΈ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ. ΠΡΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ia[4].
ΠΠΎΠΌΠ½ΠΈΡΠ΅, Π² ΡΠ°Π·Π΄Π΅Π»Π΅ 3.4.1 ΠΎΠ±ΡΠ°ΡΠ°Π»ΠΎΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΠΊΡΡΠ³Π»ΡΡ ΡΠΊΠΎΠ±ΠΎΠΊ Π² Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΡ , ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ ΡΠΎΡΠ΅ΡΠ½ΡΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ. ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡ ΠΊΡΡΠ³Π»ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ Π²ΠΎΠΊΡΡΠ³ ΡΠ°ΡΡΠΈ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ:
last = *ia + 4; // ok: last = 4, ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ ia[0] + 4
ΠΡΠΎΡ ΠΊΠΎΠ΄ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ia ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ 4 ΠΊ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΡΠΈΡΠΈΠ½Ρ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ 4.1.2.
ΠΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈΠΠ°ΠΊ ΡΠΆΠ΅ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡ, Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΠΌΠ΅ΡΡ, Π³Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Π°, Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΡΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°. ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΌΠ΅ΡΡ, Π³Π΄Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅Ρ ΡΡΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π°.
int ia[] = {0,2,4,6,8}; // ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· 5 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΈΠΏΠ° int
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ia[0], ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅Π΅ ΠΈΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Π°. ΠΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΌΠ°ΡΡΠΈΠ²Π° Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π² ΡΡΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅.
int i = ia[2]; // ia ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅ΡΡΡ Π² ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ia
// ia[2] Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ (ia + 2)
int *p = ia; // p ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ ia
i = *(p + 2); // ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ i = ia[2]
ΠΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ, ΠΏΠΎΠΊΠ° ΠΎΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ (ΠΈΠ»ΠΈ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠ½ΡΠ°) Π² ΠΌΠ°ΡΡΠΈΠ²Π΅.
int *p = &ia[2]; // p ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ 2
int j = p[1]; // p[1] - ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ *(p + 1),
// p[1] ΡΠΎΡ ΠΆΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΡΡΠΎ ΠΈ ia[3]
int k = p[-2]; // p[-2] ΡΠΎΡ ΠΆΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΡΡΠΎ ΠΈ ia[0]
ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° Π²Π°ΠΆΠ½ΠΎΠ΅ ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ ΠΈ ΡΠ°ΠΊΠΈΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ vector ΠΈ string, Ρ ΠΊΠΎΡΠΎΡΡΡ Π΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ ΡΡΠ΅Π±ΡΡΡ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π±ΡΠ» Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ. ΠΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ. ΠΠ½Π΄Π΅ΠΊΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΡΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ Π°Π΄ΡΠ΅Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ (ΠΈΠ»ΠΈ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΏΠΎΡΠ»Π΅ ΠΊΠΎΠ½ΡΠ°) ΠΌΠ°ΡΡΠΈΠ²Π°, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ.
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² Π΄Π»Ρ Π²Π΅ΠΊΡΠΎΡΠΎΠ² ΠΈ ΡΡΡΠΎΠΊ, ΠΈΠ½Π΄Π΅ΠΊΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΡΠΌ.
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π° 3.5.3Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅ 3.34. Π‘ ΡΡΠ΅ΡΠΎΠΌ, ΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ p1 ΠΈ p2 ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² ΡΠΎΠΌ ΠΆΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π΅, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄? ΠΠ°ΠΊΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ p1 ΠΈΠ»ΠΈ p2 Π΄Π΅Π»Π°ΡΡ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π½Π΅Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠΌ?
p1 += p2 - p1;
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅ 3.35. ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π΄Π»Ρ ΠΎΠ±Π½ΡΠ»Π΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°.
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅ 3.36. ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡΡΡ Π΄Π²Π° ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π° ΡΠ°Π²Π΅Π½ΡΡΠ²ΠΎ. ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Π΄Π²ΡΡ Π²Π΅ΠΊΡΠΎΡΠΎΠ².
3.5.4. Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ Π² ΡΡΠΈΠ»Π΅ Π‘
Π₯ΠΎΡΡ ΡΠ·ΡΠΊ Π‘++ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΡΡΠΎΠΊΠΈ Π² ΡΡΠΈΠ»Π΅ Π‘, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ Π‘++ Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ. Π‘ΡΡΠΎΠΊΠΈ Π² ΡΡΠΈΠ»Π΅ Π‘ β Π½Π° ΡΠ΄ΠΈΠ²Π»Π΅Π½ΠΈΠ΅ Π±ΠΎΠ³Π°ΡΡΠΉ ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½Π°Ρ ΠΏΡΠΈΡΠΈΠ½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π·Π°ΡΠΈΡΡ.
Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΡΡΡΠΎΠΊΠΎΠ²ΡΠΉ Π»ΠΈΡΠ΅ΡΠ°Π» β ΡΡΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ±ΡΠ΅ΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΡ ΡΠ·ΡΠΊ Π‘++ ΡΠ½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π» ΠΎΡ ΡΠ·ΡΠΊΠ° Π‘: ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π² ΡΡΠΈΠ»Π΅ Π‘ (C-style character string). Π‘ΡΡΠΎΠΊΠ° Π² ΡΡΠΈΠ»Π΅ Π‘ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½ΡΡ , ΡΠΊΠΎΡΠ΅Π΅ ΡΡΠΎ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΡΡΡΠΎΠΊ. Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠΎΠΌΡ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ ΡΡΡΠΎΠΊΠΈ Ρ ΡΠ°Π½ΡΡΡΡ Π² ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΈ ΡΠ²Π»ΡΡΡΡΡ ΡΡΡΠΎΠΊΠΎΠΉ Ρ Π·Π°Π²Π΅ΡΡΠ°ΡΡΠΈΠΌ Π½ΡΠ»Π΅Π²ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ (null-terminated string). ΠΠΎΠ΄ Π·Π°Π²Π΅ΡΡΠ°ΡΡΠΈΠΌ Π½ΡΠ»Π΅Π²ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ, ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π²ΠΈΠ΄ΠΈΠΌΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» Π² ΡΡΡΠΎΠΊΠ΅ ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°Π΅ΡΡΡ Π½ΡΠ»Π΅Π²ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ ('\0'). ΠΠ»Ρ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΈΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ.