Pointer int iptr iptr integer var integer cptr

  • Slides: 33
Download presentation

����� (Pointer) (��� ) ���� int *iptr; //��������� iptr integer var �� integer cptr

����� (Pointer) (��� ) ���� int *iptr; //��������� iptr integer var �� integer cptr char *cptr char var //��������� �� character

���� 1. ������� main() { int num = 3; int *ptr; ptr =# printf(“The

���� 1. ������� main() { int num = 3; int *ptr; ptr =# printf(“The value of num is %d. Its address is %lu. ”, *ptr, (long)ptr); }

������ Declaration: int num = 3; int *ptr; num 3 int var ptr Executable

������ Declaration: int num = 3; int *ptr; num 3 int var ptr Executable code: ptr = # 3 num ptr

���� 2 ������� main() { static int number[6] = {1, 2, 3, 4, 5,

���� 2 ������� main() { static int number[6] = {1, 2, 3, 4, 5, 6}; int i, *ptr; for(i=0; i<6; i++) { ptr = &number[i]; printf(“%dn”, *ptr); } }

������ 2 i = 0; ptr number 1 0 1 2 i = 1;

������ 2 i = 0; ptr number 1 0 1 2 i = 1; ptr i = 2; ptr i = 3; ptr i = 4; ptr i = 5; ptr 2 3 4 5

���� 3 ������� int strlen(s) char *s; { char *p = s; while(*p !=

���� 3 ������� int strlen(s) char *s; { char *p = s; while(*p != ‘’) p++; return (p-s); }

���� 4 ������� main() { int j, n 1=1; n 2=2; n 3=3; *ptr,

���� 4 ������� main() { int j, n 1=1; n 2=2; n 3=3; *ptr, *parray[4]; parray[1] = &n 1; parray[2] = &n 2; ptr = &n 3; parray[3] = ptr; for(j=1; j<4; j++) printf(“%dn”, *parray[j]); }

������ declaration int n 1=1, n 2=2, n 3=3, *ptr, *parray[4] n 1 n

������ declaration int n 1=1, n 2=2, n 3=3, *ptr, *parray[4] n 1 n 2 n 3 1 2 3 parray [0] [1] [2] [3] ptr executable code n 1 n 2 n 3 1 2 3 parray [0] [1] [2] [3] ptr

���� 5 ������ ����� char *month(); main() { int num; puts(“Enter number of month”);

���� 5 ������ ����� char *month(); main() { int num; puts(“Enter number of month”); scanf(“%d”, num); printf(“The name of month is %s”, month(num)); } char *month(n) int n; { static char *name []= { “illegal month”, “January”, “February”, “March”, “April ”, “May”, “June”, “July”, “August”, “September”, “October”, “November”, “December”}; return((n<1 || n>12)? name[0]: name[n]; ) } }

������� 5 ������� Enter number of month >6 The name of month is June

������� 5 ������� Enter number of month >6 The name of month is June

������ name[0] name[1] name[2] illegal month January February. . name[12] December

������ name[0] name[1] name[2] illegal month January February. . name[12] December

Content �� SHEET 9. 1������� Pointer 9. 2 ������� Pointer 9. 3 ������� Pointer

Content �� SHEET 9. 1������� Pointer 9. 2 ������� Pointer 9. 3 ������� Pointer ��A 9. 4 ������� Pointer ��S 9. 5 Array ��� Pointer 9. 6 Pointer ��� Pointer 9. 7 Pointer ��������� Structure

�������� pointer w ��������� 2 ��������� pointer ���������� w ��������� 3 "Warning c: prgPrg

�������� pointer w ��������� 2 ��������� pointer ���������� w ��������� 3 "Warning c: prgPrg 08 -03. cpp: Suspicious pointer Conversion in function main“ ] C++ Error] pointer 1. cpp(28): E 2034 Cannot convert 'int *' to 'float *' w ��������� 4 Null pointer assignment

9. 7 Pointer ������� Structure ������������� 22 Input data to structure by pointer 3

9. 7 Pointer ������� Structure ������������� 22 Input data to structure by pointer 3 Item: Code: 121 Name: AA Age: 12 Code: 122 Name: BB Age: 23 Code: 123 Name: CC Age: 14 Display data from structure by use pointer -> 121 AA 12 …. .