#include <iostream>
using namespace std;
void k1(int* p,int *j)
{
*j++;
(*p)++;
}
struct ivector3d
{
int *array;
};
void scale(ivector3d v, int k)
{
for (int i = 0; i != 3; ++i)
v.array[i] *= k;
}
int main()
{
int *p = 0;
int k = 4;
int j = 6;
p = &k;
cout << "p before: " << p << ", after: ";
k1(p,&j); // не передаю адрес указателя
cout << p << endl;
struct ivector3d iv3d;
int a[3] = { 1,1,1 };
iv3d.array = a;
cout << "iv3d.array before: " << iv3d.array << ", after: ";
scale(iv3d, 2);
cout << iv3d.array << endl;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnZvaWQgazEoaW50KiBwLGludCAqaikKewogICAgKmorKzsKICAgICgqcCkrKzsKCn0KCnN0cnVjdCBpdmVjdG9yM2QKewogICAgaW50ICphcnJheTsKfTsKCnZvaWQgc2NhbGUoaXZlY3RvcjNkIHYsIGludCBrKQp7CiAgICBmb3IgKGludCBpID0gMDsgaSAhPSAzOyArK2kpCiAgICAgICAgdi5hcnJheVtpXSAqPSBrOwp9CgoKaW50IG1haW4oKQp7CiAgICBpbnQgKnAgPSAwOwogICAgaW50IGsgPSA0OwogICAgaW50IGogPSA2OwogICAgcCA9ICZrOwogICAgY291dCA8PCAicCBiZWZvcmU6ICIgPDwgcCA8PCAiLCBhZnRlcjogIjsKICAgIGsxKHAsJmopOyAvLyDQvdC1INC/0LXRgNC10LTQsNGOINCw0LTRgNC10YEg0YPQutCw0LfQsNGC0LXQu9GPCiAgICBjb3V0IDw8IHAgPDwgZW5kbDsKCiAgICBzdHJ1Y3QgaXZlY3RvcjNkIGl2M2Q7CiAgICBpbnQgYVszXSA9IHsgMSwxLDEgfTsKICAgIGl2M2QuYXJyYXkgPSBhOwogICAgY291dCA8PCAiaXYzZC5hcnJheSBiZWZvcmU6ICIgPDwgaXYzZC5hcnJheSA8PCAiLCBhZnRlcjogIjsKICAgIHNjYWxlKGl2M2QsIDIpOwogICAgY291dCA8PCBpdjNkLmFycmF5IDw8IGVuZGw7Cgp9Cg==