{ "cells": [ { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "#include \n", "\n", "void CopyByValue(int num1, int num2);\n", "void CopyByAddress(int *num1, int *num2);\n", "\n", "int main()\n", "{\n", " int a, b;\n", " a = 10;\n", " b = 20;\n", " \n", " printf(\"initially a: %d, b:\\n\", a, b);\n", "\n", " CopyByValue(a, b);\n", " printf(\"After copy by value a: %d, b:\\n\", a, b);\n", "\n", " CopyByAddress(&a, &b);\n", " printf(\"After copy by Address a: %d, b:\\n\", a, b);\n", "\n", " return 0;\n", "}\n", "\n", "void CopyByValue(int num1, int num2)\n", "{\n", " a = 20;\n", " b = 30;\n", " printf(\"copy by value a: %d, b: %d\\n\", a, b);\n", "}\n", "\n", "void CopyByAddress(int *num1, int *num2)\n", "{ \n", " *a = 40;\n", " *b = 50;\n", " printf(\"copy by address a: %d, b: %d\\n\", *a, *b);\n", "}" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "address of x: 0x7ffee1df51db\n", "address of p1: 0x7ffee1df51db\n", "address of p2: 0x0\n", "address p1 is pointing: a\n", "value of y: a\n" ] } ], "source": [ "#include \n", "\n", "int main()\n", "{\n", " char x = 'a', y;\n", " char *p1, *p2;\n", " \n", " p1 = &x;\n", " y = *p1;\n", " p2 = NULL;\n", " \n", " printf(\"address of x: %p\\n\", &x);\n", " printf(\"address of p1: %p\\n\", p1);\n", " printf(\"address of p2: %p\\n\", p2);\n", " printf(\"address p1 is pointing: %c\\n\", *p1);\n", " printf(\"value of y: %c\\n\", y);\n", " \n", " return 0;\n", "}" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "#include \n", "\n", "int main()\n", "{\n", " int i = 10;\n", " float j = 10.00;\n", " char k = 'A';\n", " long l = 1234567890;\n", " double m = 123456789.987654321;\n", "\n", " int *ptr1 = &i;\n", " float *ptr2 = &j;\n", " char *ptr3 = &k;\n", " long *ptr4 = &l;\n", " double *ptr5 = &m;\n", " \n", " printf(\"int: %u, float: %u, char: %u, long: %u, doubel %u\\n\",\n", " ptr1, ptr2, ptr3, ptr4, ptr5);\n", " \n", " ptr1++;\n", " ptr2++;\n", " ptr3++;\n", " ptr4++;\n", " ptr5++;\n", " \n", " printf(\"int: %u, float: %u, char: %u, long: %u, doubel %u\\n\",\n", " ptr1, ptr2, ptr3, ptr4, ptr5);\n", " \n", " return 0;\n", "}" ] } ], "metadata": { "kernelspec": { "display_name": "C", "language": "c", "name": "c" }, "language_info": { "file_extension": ".c", "mimetype": "text/plain", "name": "c" } }, "nbformat": 4, "nbformat_minor": 2 }