Initialization from incompatible pointer type - C (СИ)
Формулировка задачи:
Выдается странное предупреждение во время компиляции кода:
а вот предупреждение:
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- int main() {
- int a[] = {10, 20, 30, 40, 50}, z, *p = &a;
- z = *p; printf("z = *p; | z = %d; p[0] = %d; p[1] = %d; p[2] = %d; p[3] = %d; p[4] = %d;\n", z, p[0], p[1], p[2], p[3], p[4]);
- z = *p+1; printf("z = *p+1; | z = %d; p[0] = %d; p[1] = %d; p[2] = %d; p[3] = %d; p[4] = %d;\n", z, p[0], p[1], p[2], p[3], p[4]);
- z = *(p+1); printf("z = *(p+1); | z = %d; p[0] = %d; p[1] = %d; p[2] = %d; p[3] = %d; p[4] = %d;\n", z, p[0], p[1], p[2], p[3], p[4]);
- z = ++*p; printf("z = ++*p; | z = %d; p[0] = %d; p[1] = %d; p[2] = %d; p[3] = %d; p[4] = %d;\n", z, p[0], p[1], p[2], p[3], p[4]);
- z = *++p; printf("z = *++p; | z = %d; p[0] = %d; p[1] = %d; p[2] = %d; p[3] = %d; p[4] = %d;\n", z, p[0], p[1], p[2], p[3], p[4]);
- z = *p++; printf("z = *p++; | z = %d; p[0] = %d; p[1] = %d; p[2] = %d; p[3] = %d; p[4] = %d;\n", z, p[0], p[1], p[2], p[3], p[4]);
- z = (*p)++; printf("z = (*p)++; | z = %d; p[0] = %d; p[1] = %d; p[2] = %d; p[3] = %d; p[4] = %d;\n", z, p[0], p[1], p[2], p[3], p[4]);
- getchar();
- return 0;
- }
Листинг программы
- first.c: In function ‘main’:
- first.c:7:11: warning: initialization from incompatible pointer type [enabled by default]
- int *p = &a;
Решение задачи: «Initialization from incompatible pointer type»
textual
Листинг программы
- int *p=a
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д