Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- /*
- &variavel -> aponta para o endereço de memória da variável
- *point -> aponta para o valor que está na variável que o ponteiro aponta
- point -> aponta para o valor do ponteiro, que é o endereço da variável que ele aponta
- point++ ou point+1 -> a operação de soma acontece nas casas da memória.
- Se a posição de memória do ponteiro é 5000 fazer point++ a posição passa para 5004(se for do tipo inteiro e depende da arquitetura)
- Pode ser que some 2bytes ou 4bytes
- */
- int main() {
- int *p, *q, i, v[2], *pv;
- void *qv;
- char R[] = "ABCDEFGHI", *S;
- p = &i;
- printf("p recebe o endereço da variável i\n");
- printf("endereço de 'i' %p e endereço de 'p' %p \n\n", &i, p);
- *p = 5;
- printf("'p' acessa 'i' e adiciona o valor 5 a variavel 'i'\n");
- printf("valor de 'i': %i\n\n", i);
- q = p;
- printf("q recebe o endereço armazenado em p");
- printf("endereço de 'i' %p e endereço de 'p' %p e endereço de 'q'%p\n\n", &i, p, q);
- printf("Endereço de 'p '%p\n", p);
- p++;
- printf("Endereço de 'p++' %p\n\n",p);
- (*q)++;
- printf("como 'q' tem o endereço da variável 'i' então, ele também consegue acessar a variavel 'i' e somar uma unidade\n");
- printf("valor de 'i': %i\n\n", i);
- printf("aaaaaaa %d %ld %ld\n", i, p - q, p - q);
- v[0] = 0; v[1] = 1;
- printf("v[0]: %i v[1]: %i\n", v[0], v[1]);//oi
- pv = v;
- printf("Endereço de v: %p endereço de pv:%p \n", v, pv);
- pv++;
- printf("Endereço de 'pv++': %p \n", pv);
- *(pv) = *(v+1) + 1;
- printf("%d %d\n", v[0], v[1]);
- qv = pv - 1;
- printf("v0 %d v1 %d\n", v[0], v[1]);
- printf("Endereço de 'qv': %p e endereço de v[0]: %p \n", qv, v);
- qv = qv + 1;
- printf("Endereço de 'qv': %p \n", qv);
- printf("valor de 'qv': %i \n", *(int*)qv);
- printf("Endereço de v[0]%p v[1]%p \n", v, &v[1] );
- *(int *)qv = 1;
- printf("%d %d\n", v[0], v[1]);
- S = R;
- while (*(S++) != '\0'){
- *(S - 1) = *S;
- printf("<%s|%s>\n", R, S);
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement