summaryrefslogtreecommitdiff
path: root/Fundamental_of_Computing_and_Programming_in_C/Chapter14.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'Fundamental_of_Computing_and_Programming_in_C/Chapter14.ipynb')
-rwxr-xr-xFundamental_of_Computing_and_Programming_in_C/Chapter14.ipynb234
1 files changed, 234 insertions, 0 deletions
diff --git a/Fundamental_of_Computing_and_Programming_in_C/Chapter14.ipynb b/Fundamental_of_Computing_and_Programming_in_C/Chapter14.ipynb
new file mode 100755
index 00000000..12a1734c
--- /dev/null
+++ b/Fundamental_of_Computing_and_Programming_in_C/Chapter14.ipynb
@@ -0,0 +1,234 @@
+{
+ "metadata": {
+ "name": "",
+ "signature": "sha256:44f5daf77255992c95710d94f062b0f1f1e981b9e6cce07f23ed45a322c4b130"
+ },
+ "nbformat": 3,
+ "nbformat_minor": 0,
+ "worksheets": [
+ {
+ "cells": [
+ {
+ "cell_type": "heading",
+ "level": 1,
+ "metadata": {},
+ "source": [
+ "Chapter 14 : Accessing Variable through Pointers"
+ ]
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example: 1, Page Number: 5.107 "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Program to accessing through variable pointer\n",
+ "\n",
+ "from ctypes import c_int\n",
+ "\n",
+ "#Local definition\n",
+ "a = 22\n",
+ "a = c_int(a) # ctype datatype declaration\n",
+ "\n",
+ "b = 2.25\n",
+ "b = c_float(b) # ctype datatype declaration\n",
+ "\n",
+ "#Pointer variables\n",
+ "a_po=pointer(a)\n",
+ "b_po=pointer(b)\n",
+ "\n",
+ "# 'id' is a address of letter and it represents the address of the variable\n",
+ "a = id(a)\n",
+ "b = id(b)\n",
+ "\n",
+ "\n",
+ "#Result\n",
+ "print \"\\nValue of a = %d\" %a_po[0]\n",
+ "print \"\\nValue of b = %.2f\" %b_po[0]\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ "Value of a = 22\n",
+ "\n",
+ "Value of b = 2.25\n"
+ ]
+ }
+ ],
+ "prompt_number": 9
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example: 2, Page Number: 5.108"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Program to print address and value of variable\n",
+ "\n",
+ "from ctypes import c_int\n",
+ "\n",
+ "#Local definition\n",
+ "a = 22\n",
+ "a = c_int(a) # ctype datatype declaration\n",
+ "\n",
+ "#Pointer variables\n",
+ "a_po=pointer(a)\n",
+ "\n",
+ "# 'id' is a address of letter and it represents the address of the variable\n",
+ "a = id(a)\n",
+ "\n",
+ "#Result\n",
+ "print \"\\n Value of a = %d\" %a_po[0]\n",
+ "print \"\\n Address of a = %u\" %id(a)\n",
+ "print \"\\n Value at address %u = %d\" %(id(a),a_po[0])\n"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " Value of a = 22\n",
+ "\n",
+ " Address of a = 4344066728\n",
+ "\n",
+ " Value at address 4344066728 = 22\n"
+ ]
+ }
+ ],
+ "prompt_number": 8
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example: 3, Page Number: 5.108"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "# Program to print value and address of variable\n",
+ "\n",
+ "from ctypes import c_int\n",
+ "\n",
+ "#Local definition\n",
+ "a = 22\n",
+ "b = c_int(a) # ctype datatype declaration\n",
+ "\n",
+ "#Pointer variable\n",
+ "b_po=pointer(b)\n",
+ "\n",
+ "# 'id' is a address of letter and it represents the address of the variable\n",
+ "b = id(a)\n",
+ "\n",
+ "#Result\n",
+ "print \"\\n Value of a = %d\" %a\n",
+ "print \"\\n Value of a = %d\" %(c_int(a).value)\n",
+ "print \"\\n Value of a = %d\" %b_po[0]\n",
+ "print \"\\n Address of a = %u\" %id(a)\n",
+ "print \"\\n Address of a = %u\" %b\n",
+ "print \"\\n Address of a = %u\" %id(b)\n",
+ "print \"\\n Value of b = address of a = %u\" %b"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " Value of a = 22\n",
+ "\n",
+ " Value of a = 22\n",
+ "\n",
+ " Value of a = 22\n",
+ "\n",
+ " Address of a = 4298180848\n",
+ "\n",
+ " Address of a = 4298180848\n",
+ "\n",
+ " Address of a = 4344066728\n",
+ "\n",
+ " Value of b = address of a = 4298180848\n"
+ ]
+ }
+ ],
+ "prompt_number": 10
+ },
+ {
+ "cell_type": "heading",
+ "level": 2,
+ "metadata": {},
+ "source": [
+ "Example: 4, Page Number: 5.109"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "collapsed": false,
+ "input": [
+ "#Program to illustrate pointer to pointer\n",
+ "\n",
+ "from ctypes import c_int\n",
+ "\n",
+ "#Local definition\n",
+ "a = 22\n",
+ "b = c_int(a) # ctype datatype declaration\n",
+ "c = c_int(a) # ctype datatype declaration\n",
+ "\n",
+ "#Pointer variable\n",
+ "b_po = pointer(b)\n",
+ "c_po = pointer(b_po) # c_po is a pointer to another pointer\n",
+ "\n",
+ "# 'id' is a address of letter and it represents the address of the variable\n",
+ "b = id(a)\n",
+ "c = id(b)\n",
+ "\n",
+ "#Result\n",
+ "print \"\\n Value of a is %d\" %a\n",
+ "print \"\\n Value of a is %d\" %(c_int(a).value)"
+ ],
+ "language": "python",
+ "metadata": {},
+ "outputs": [
+ {
+ "output_type": "stream",
+ "stream": "stdout",
+ "text": [
+ "\n",
+ " Value of a is 22\n",
+ "\n",
+ " Value of a is 22\n"
+ ]
+ }
+ ],
+ "prompt_number": 14
+ }
+ ],
+ "metadata": {}
+ }
+ ]
+} \ No newline at end of file