diff options
Diffstat (limited to 'Fundamental_of_Computing_and_Programming_in_C/Chapter14.ipynb')
-rwxr-xr-x | Fundamental_of_Computing_and_Programming_in_C/Chapter14.ipynb | 234 |
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 |