From 799b2e258842e761fb959f5e04dda4df5e2c861e Mon Sep 17 00:00:00 2001 From: Peace Date: Thu, 24 Apr 2025 16:14:57 +0900 Subject: [PATCH] array and pointers --- practice/lc_arrayAndPointers.c | 39 ++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 practice/lc_arrayAndPointers.c diff --git a/practice/lc_arrayAndPointers.c b/practice/lc_arrayAndPointers.c new file mode 100644 index 0000000..13625cc --- /dev/null +++ b/practice/lc_arrayAndPointers.c @@ -0,0 +1,39 @@ +#include +#include + +int main() +{ + char vowels[] = { 'A', 'E', 'I', 'O', 'U' }; + char* pvowels = vowels; + + printf("Point the addresses\n"); + for (int i = 0; i < 5; i++) + { + printf("&vowels[%d]: %p, pvowels + %d: %p, vowels + %d: %p\n", i, &vowels[i], i, pvowels + i, i, vowels + i); + } + + printf("\nPoint the values\n"); + for (int i = 0; i < 5; i++) + { + printf("vowels[%d]: %c, *(pvowels + %d): %c, *(vowels + %d): %c\n", i, vowels[i], i, *(pvowels + i), i, *(vowels + i)); + } + + // Dynamic malloc for array + int n = 4; + char* parr = (char*)malloc(n * sizeof(char)); + parr[0] = 'L'; + parr[1] = 'o'; + parr[2] = 'V'; + parr[3] = 'e'; + + for (int i = 0; i < n; i++) + { + printf("%c", parr[i]); + } + + printf("\n"); + + free(parr); + + return 0; +} \ No newline at end of file