Assoc. Prof. Dr. Tansu FİLİK
|
|
- Benjamin Shields
- 5 years ago
- Views:
Transcription
1 Assoc. Prof. Dr. Tansu FİLİK
2 Computer Programming Previously on Bil 200 Introduction to pointers String (character array) Static and automatic variables
3 static and automatic variables, and scope
4 Rem: Static variables We have seen that local variables are lost when exitting a function. Static variables are re-formed every time when entering the same function. They are different from automatic variables. These variables are formed at the beginning of the program, and their values are set. Obviously, they are valid only inside its declared function.
5 void fonk_yaz(void) { int a = 0; printf("deger = %d\n", a); a++; void main() { int i; for( i = 0 ; i < 3 ; i++ ) { fonk_yaz(); Automatic variables A new a is formed for each enterence to the function. This is the default way.
6 Example: without using static void fonk_yaz(void) { int a = 0; printf("deger = %d\n", a); a++; void main() { int i; A new a variable is formed at each enterence to the function. The variable a is destroyed whenever we quit the function. for( i = 0 ; i < 3 ; i++ ) { fonk_yaz(); So, on the screen, we would see three 0 (zero) values.
7 void fonk_yaz(void) { static int a = 0; Example re-formed every time when entering the same function printf("deger = %d\n", a); a++; void main() { int i; On the screen, you see deger = 0 deger = 1 deger = 2 for( i = 0 ; i < 3 ; i++ ) { fonk_yaz();
8 Example void fonk_yaz(void) { static int a = 0; The variable a is formed at the beginning of the program, and its value is kept. printf("deger = %d\n", a); a++; void main() { int i; The variable is not destroyed when quitting the program. for( i = 0 ; i < 3 ; i++ ) { fonk_yaz();
9 Enumerated types variables that are formed by the keyword: enum
10 Enumerated types Gives you a chance to form your own type of variables. Its usage improves intelligibility of the program. For example, we may create a type to contain week days: enum Gunler { Pazartesi, Sali, Carsamba, Persembe, Cuma, Cumartesi, Pazar ;
11 Enumerated types We may make variables of the created type enum Gunler gun; switch(gun) { case Pazartesi: printf("pazartesi"); break; case Sali: printf("sali"); break;...
12 Enumerated Types Actually, each element in an enum type is a number list starting from 0. enum Gunler { Pazartesi, /* 0 */ Sali, /* 1 */ Carsamba, /* 2 */ Persembe, /* 3 */ Cuma, /* 4 */ Cumartesi, /* 5 */ Pazar /* 6 */ ;
13 Enumerated Types Since enum elements are numerical, they can be used in comparisons of if expressions. enum Gunler gun1, gun2; gun1 = (enum Gunler) 2; /* carsamba */ gun2 = "Pazartesi"; if(gun2 < gun1) { printf("gun2 daha onceki gun\n");
14 Scope How long do the variables stay valid?
15 Scope of Variables The variable scope is defined as the program segment in which the variable can be used. The variable name is an alias for the address of the variable in the memory. For example, if the variable is defined right after "void main {", then it is valid only in main(). It cannot be used anywhere else.
16 Scope of Variables If a variable is defined inside a block ( { and ), then it is valid until the end of block. If the variable is defined before all the functions, they are called global variables, and they are valid throughout the whole file.
17 Scope of Variables No two variables may have the same name if they are defined in the same scope. In different scopes, you can use variables with the same name. Since they correspond to different memory places, there will be no ambiguity. Yet, try to avoid using the same variable names under any circumstances.
18 Example - 1 x variable is not defined yet. Compile error!!! #include <stdio.h> void main ( ) { if ( x == 3 ) { float x = 4.5; x was only in the block, and now not defined any more... printf ( "blok içinde x=%f", x); printf( "bloktan sonra x=%d\n", x);
19 Example - 2 x variable is defined. OK!! #include <stdio.h> void main ( ) { int x = 3; Here, the nearestly defined one is valid. if ( x == 3 ) { float x = 4.5; printf ( "blok içinde x=%f", x); printf( bloktan sonra x=%d\n", x);
20 Scope of Variables In the previous example, there is an x variable defined right after main(). But in if block, there is another variable called x. Inside the block, that new variable will be valid, and the outer x is not valid. Since the two variables correspond to two different memory addresses, they will not be confused.
21 Would they? Run the program and see the following output: blok içinde x=4.5 bloktan sonra x=3
22 Example (Scope) Question #include <stdio.h> void main(void){ int x = 5, y = 7, z; x += y++; if (y > 7){ int x = 2; x += y; printf("x = %d\n", x); printf("x = %d\n", x); x = 10 X = 12
23 Computer Programming Pointers Pointers Variables whose addresses are specified.
24 Computer Programming Pointers (we used them to access parameters that are sent by reference-address) A pointer points to something. They require using & and * symbols. A variable, e.g. 'int yil' is a name of memory place. A pointer keeps the address of this variable. The variable corresponds to whatever the address contains. Pointers are methods to reach to the values contained inside addresses.
25 Computer Programming Pointers Consider a variable: 'int yillar'. Then, &yillar corresponds to the address of the variable. Remember that we used & symbol before the variables used in scanf(). scanf("%d", &yillar); &yillar is actually a constant for the pointer. & means "adress of". A line such as printf("%d", & yillar) writes someting like This is the memory address of the variable yillar.
26 Computer Programming Pointers What are & and *? & : Address operator. Returns the address of whatever comes after it. * : Access value or eliminate reference operator. It returns the contained value of whatever address number comes after it. * and & are duals of each other. Example: *&a is a itself.
27 Computer Programming Pointers What are & and *? With * operator, construct a variable: /* *pd means it pd contains address. */ int *pd, d = 5; Use & to access to the address of a variable. /* Load address of d into pd variable. */ pd = &d; To access to the variable at an address, use * *pd = 10; /* Assigns 10 as a value of d */
28 Graphically pd int *pd, d = 5; pd = &d; *pd=10 &d 10 5 *pd==d==5 => d==10!!!
29 Computer Programming Pointers Pointer Variable A pointer variable contains an address. As an example, an integer pointer is defined like int *p; The variable p itself holds an integer correponding to the address of the integer *p. int a = 5, *p; p = &a; printf("%d", *p); writes 5 on the screen.
30 Computer Programming Pointers Pointer Variables Examples FILE *dosya; int *a; float *b; char *c; The star symbol before the variable name means that these variables are represented by memory addresses.
31 Example Change the value of yillar variable using pointers. int yillar, *p; yillar = 20; p = &yillar; *p = 10; adress : : : : : : : : : : variables yillar p
32 Computer Programming Pointers Pointers and Arrays The writers of the C language developed a smart method of using pointers with arrays. The name of an array is a pointer to the first element of the array. Example: int tekler[5] = {3,5,7,9,11; The name tekler corresponds to a pointer.
33 Computer Programming Pointers Example: Pointer Operations int tekler[5] = {3,5,7,9,11; int *p, n; p = tekler; /* p points to 3 */ p = & tekler[0]; /* same as above */ n = *p; /* n is now 3 */ n = p[0]; /* same as above */ p[4] = 13; /* tekler[4] becomes 13 */
34 int tekler[5] = {3,5,7,9,11; p = tekler; e = & tekler[0]; n = *p; d = p[2]; p[4] = 13; e p 1000: 1004: 1008: 1016: 1020: 1024: 1028: 1032: 1036: 1040: 1044: 1048: tekler n d
35 Computer Programming Pointers Arithmetic Operations on Pointers Pointer variables can be incremented or decremented. A numerical value can be added to or subtracted from an integer variable. Two pointers of the same type can be added or subtracted. Two pointers can be compared. A pointer which not point to any address contains 0 (NULL).
36 Computer Programming Pointers Pointer Arithmetic int tekler[5] = {3,5,7,9,11; int *p, n; p = tekler; /* p points to 3 */ ++p; /* p points to 5 */ p = (tekler + 1); /* p points to 5 */ p = (tekler + 4); /* p points to 11 */ p = & tekler[4]; /* p points to 11 */
37 Computer Programming Pointers Pointers and Array Operators Array names are constant addresses that correspond to always the same place. ++tekler; tekler = p; Pointer variables have free addresses which can be changed. ++p; p += 5; p--; ERROR VALID and USEFUL
38 Computer Programming Pointers Pointer Arithmetic int i[7]; int *j; j= i; /* j points to i[0] */ j= j+1; /* Increment j pointer*/ *j= 3; /* Value pointed to by j is 3 */ j= i; /* Same as j= &i[0] */ *j= 10; /* i[0] = 10 */ j[1]=4; /* Value pointed to by j+1 is 4 */ j= j+5; /* Same as j = &i[5] */ j[1]= 5; i= i+4; /* Error!!! */ j= j+2; /* j goes to one after last element*/ *j= 4; /* Error!!! Nothing there...*/
39 int i, arr[10]; for (i=0;i<10;i++) arr[i] = 3*i + 100; arr = &(arr[0]) arr+1 = &(arr[1]) arr[0] = *arr arr[1] = *(arr+1) *(arr+i) = arr[i] arr+i = &(arr[i]) pointer (*) representaion, is equivalent to array [] representation.
40 Computer Programming Pointers *arr = arr[0] = 100 *(arr+1) = arr[1] = 103; *(arr++) = 103 NOW arr points to the next element s address. &(arr[3]) = arr+3 for(i=1;i<10;i++) printf( %d\n,*(arr++)); /* prints out the elements of the array. However, arr will be pointing to the end of the array now, so be careful about further using it: */ printf( %d\n,*arr); /* arr[9] is printed */
41 Computer Programming Pointers Passing Arrays to Functions How do we send all elements of an array to a function? We send the address of the first element. void yaz(int *dz) { printf("%d", dz[4]); void main() { int dizi[5]; yaz(dizi); /*yaz(&(dizi[0]));*/
42 Computer Programming Pointers Passing Arrays to Functions How do we send all elements of an array to a function? We send the address of the first element. void dizi_carp(int ar1[], int katsayi, int uzunluk) { int i; for(i=0;i<uzunluk;i++) ar1[i] *= katsayi;
43 Computer Programming Pointers Passing Arrays to Functions Example: Averaging Function float ortalama(float a[], int n) { float ortalama(float a[], int n); /* prototype */ float toplam = 0.0; int i; int main (void) { float dizi[5] = {1.0, 2.0, 3.0, 4.0, 5.0; printf("%f\n", ortalama(dizi, 5)); /* call */ for (i=0; i < n; i++) toplam += a[i]; return( toplam / n );
Computer Programming: 8th Week Pointers
Computer Programming: 8th Week Pointers Hazırlayan Asst. Prof. Dr. Tansu Filik Computer Programming Previously on Bil-200 Recursive functions, two way communications with functions (reference) Meanings
More informationAssoc. Prof. Dr. Tansu FİLİK
Assoc. Prof. Dr. Tansu FİLİK Computer Programming Previously on Bil 200 Midterm Exam - 1 Midterm Exam - 1 126 students Curve: 49,78 Computer Programming Arrays Arrays List of variables: [ ] Computer Programming
More informationAssoc. Prof. Dr. Tansu FİLİK
Assoc. Prof. Dr. Tansu FİLİK Previously on Bil 200 Low-Level I/O getchar, putchar, getc, putc Control Structures if-else, switch-case, loops (while, dowhile, for loops) for loop (generic) A disturbingly
More informationComputer Programming 5th Week loops (do-while, for), Arrays, array operations, C libraries
Computer Programming 5th Week loops (do-while, for), Arrays, array operations, C libraries Hazırlayan Asst. Prof. Dr. Tansu Filik Computer Programming Previously on Bil 200 Low-Level I/O getchar, putchar,
More informationC: How to Program. Week /Mar/05
1 C: How to Program Week 2 2007/Mar/05 Chapter 2 - Introduction to C Programming 2 Outline 2.1 Introduction 2.2 A Simple C Program: Printing a Line of Text 2.3 Another Simple C Program: Adding Two Integers
More informationPointers. Pointer Variables. Chapter 11. Pointer Variables. Pointer Variables. Pointer Variables. Declaring Pointer Variables
Chapter 11 Pointers The first step in understanding pointers is visualizing what they represent at the machine level. In most modern computers, main memory is divided into bytes, with each byte capable
More informationC-LANGUAGE CURRICULAM
C-LANGUAGE CURRICULAM Duration: 2 Months. 1. Introducing C 1.1 History of C Origin Standardization C-Based Languages 1.2 Strengths and Weaknesses Of C Strengths Weaknesses Effective Use of C 2. C Fundamentals
More informationAssoc. Prof. Dr. Tansu FİLİK
Assoc. Prof. Dr. Tansu FİLİK Bil 200 Week -2 Previously on Bil 200 Programming Languages (Machine Code, Assembly code, high-level languages) Compiler (translator) Software development (components of algorithm)
More informationAssoc. Prof. Dr. Tansu FİLİK
Assoc. Prof. Dr. Tansu FİLİK Previously on Bil 200 Operators Logical and arithmetic operators Control Structures if-else mechanism Low-level I/O They are fast! Might be useful for console applications.
More informationB.V. Patel Institute of Business Management, Computer & Information Technology, Uka Tarsadia University
Unit 1 Programming Language and Overview of C 1. State whether the following statements are true or false. a. Every line in a C program should end with a semicolon. b. In C language lowercase letters are
More informationFundamental of Programming (C)
Borrowed from lecturer notes by Omid Jafarinezhad Fundamental of Programming (C) Lecturer: Vahid Khodabakhshi Lecture 9 Pointer Department of Computer Engineering 1/46 Outline Defining and using Pointers
More informationChapter 2 - Introduction to C Programming
Chapter 2 - Introduction to C Programming 2 Outline 2.1 Introduction 2.2 A Simple C Program: Printing a Line of Text 2.3 Another Simple C Program: Adding Two Integers 2.4 Memory Concepts 2.5 Arithmetic
More informationLecture 3. More About C
Copyright 1996 David R. Hanson Computer Science 126, Fall 1996 3-1 Lecture 3. More About C Programming languages have their lingo Programming language Types are categories of values int, float, char Constants
More informationLecture 05 I/O statements Printf, Scanf Simple statements, Compound statements
Programming, Data Structures and Algorithms Prof. Shankar Balachandran Department of Computer Science and Engineering Indian Institute of Technology, Madras Lecture 05 I/O statements Printf, Scanf Simple
More informationPointers. 10/5/07 Pointers 1
Pointers 10/5/07 Pointers 1 10/5/07 Pointers 2 Variables Essentially, the computer's memory is made up of bytes. Each byte has an address, associated with it. 10/5/07 Pointers 3 Variable For example 1:#include
More informationUnit 7. Functions. Need of User Defined Functions
Unit 7 Functions Functions are the building blocks where every program activity occurs. They are self contained program segments that carry out some specific, well defined task. Every C program must have
More informationC Functions. CS 2060 Week 4. Prof. Jonathan Ventura
CS 2060 Week 4 1 Modularizing Programs Modularizing programs in C Writing custom functions Header files 2 Function Call Stack The function call stack Stack frames 3 Pass-by-value Pass-by-value and pass-by-reference
More informationComputer Programming: 7th Week Functions, Recursive Functions, Introduction to Pointers
Computer Programming: 7th Week Functions, Recursive Functions, Introduction to Pointers Hazırlayan Asst. Prof. Dr. Tansu Filik Introduction to Programming Languages Previously on Bil-200 Functions: Function
More informationVariables Data types Variable I/O. C introduction. Variables. Variables 1 / 14
C introduction Variables Variables 1 / 14 Contents Variables Data types Variable I/O Variables 2 / 14 Usage Declaration: t y p e i d e n t i f i e r ; Assignment: i d e n t i f i e r = v a l u e ; Definition
More informationAMCAT Automata Coding Sample Questions And Answers
1) Find the syntax error in the below code without modifying the logic. #include int main() float x = 1.1; switch (x) case 1: printf( Choice is 1 ); default: printf( Invalid choice ); return
More informationComputer Programming 3 th Week Variables, constant, and expressions
3 th Week Variables, constant, and expressions Hazırlayan Asst. Prof. Dr. Tansu Filik Previously on Bil 200 Unitary operations (applied to single variable, +.-,++,--) Type casting Operation/Operator precedence
More informationPROGRAMMAZIONE I A.A. 2018/2019
PROGRAMMAZIONE I A.A. 2018/2019 COMMENTS COMMENTS There are two ways to insert a comment in C: üblock comments begin with /* and end with */, and üline comments begin with // and end with the next new
More informationParameter passing. Programming in C. Important. Parameter passing... C implements call-by-value parameter passing. UVic SEng 265
Parameter passing Programming in C UVic SEng 265 Daniel M. German Department of Computer Science University of Victoria 1 SEng 265 dmgerman@uvic.ca C implements call-by-value parameter passing int a =
More informationFunctions. Arash Rafiey. September 26, 2017
September 26, 2017 are the basic building blocks of a C program. are the basic building blocks of a C program. A function can be defined as a set of instructions to perform a specific task. are the basic
More informationComputer Programming Unit 3
POINTERS INTRODUCTION Pointers are important in c-language. Some tasks are performed more easily with pointers such as dynamic memory allocation, cannot be performed without using pointers. So it s very
More informationCSCI 2212: Intermediate Programming / C Review, Chapters 10 and 11
... 1/16 CSCI 2212: Intermediate Programming / C Review, Chapters 10 and 11 Alice E. Fischer February 3, 2016 ... 2/16 Outline Basic Types and Diagrams ... 3/16 Basic Types and Diagrams Types in C C has
More informationM1-R4: Programing and Problem Solving using C (JAN 2019)
M1-R4: Programing and Problem Solving using C (JAN 2019) Max Marks: 100 M1-R4-07-18 DURATION: 03 Hrs 1. Each question below gives a multiple choice of answers. Choose the most appropriate one and enter
More informationArrays Arrays and pointers Loops and performance Array comparison Strings. John Edgar 2
CMPT 125 Arrays Arrays and pointers Loops and performance Array comparison Strings John Edgar 2 Python a sequence of data access elements with [index] index from [0] to [len-1] dynamic length heterogeneous
More informationPES INSTITUTE OF TECHNOLOGY (BSC) I MCA, First IA Test, November 2015 Programming Using C (13MCA11) Solution Set Faculty: Jeny Jijo
PES INSTITUTE OF TECHNOLOGY (BSC) I MCA, First IA Test, November 2015 Programming Using C (13MCA11) Solution Set Faculty: Jeny Jijo 1. (a)what is an algorithm? Draw a flowchart to print N terms of Fibonacci
More informationC Language Part 2 Digital Computer Concept and Practice Copyright 2012 by Jaejin Lee
C Language Part 2 (Minor modifications by the instructor) 1 Scope Rules A variable declared inside a function is a local variable Each local variable in a function comes into existence when the function
More informationC: How to Program. Week /Apr/23
C: How to Program Week 9 2007/Apr/23 1 Review of Chapters 1~5 Chapter 1: Basic Concepts on Computer and Programming Chapter 2: printf and scanf (Relational Operators) keywords Chapter 3: if (if else )
More informationLaboratory 2: Programming Basics and Variables. Lecture notes: 1. A quick review of hello_comment.c 2. Some useful information
Laboratory 2: Programming Basics and Variables Lecture notes: 1. A quick review of hello_comment.c 2. Some useful information 3. Comment: a. name your program with extension.c b. use o option to specify
More informationCS 61c: Great Ideas in Computer Architecture
Arrays, Strings, and Some More Pointers June 24, 2014 Review of Last Lecture C Basics Variables, functioss, control flow, types, structs Only 0 and NULL evaluate to false Pointers hold addresses Address
More informationExpressions. Arithmetic expressions. Logical expressions. Assignment expression. n Variables and constants linked with operators
Expressions 1 Expressions n Variables and constants linked with operators Arithmetic expressions n Uses arithmetic operators n Can evaluate to any value Logical expressions n Uses relational and logical
More informationProgramming Language B
Programming Language B Takako Nemoto (JAIST) 7 January Takako Nemoto (JAIST) 7 January 1 / 13 Usage of pointers #include int sato = 178; int sanaka = 175; int masaki = 179; int *isako, *hiroko;
More informationCS113: Lecture 5. Topics: Pointers. Pointers and Activation Records
CS113: Lecture 5 Topics: Pointers Pointers and Activation Records 1 From Last Time: A Useless Function #include void get_age( int age ); int age; get_age( age ); printf( "Your age is: %d\n",
More informationWhy Pointers. Pointers. Pointer Declaration. Two Pointer Operators. What Are Pointers? Memory address POINTERVariable Contents ...
Why Pointers Pointers They provide the means by which functions can modify arguments in the calling function. They support dynamic memory allocation. They provide support for dynamic data structures, such
More informationVariation of Pointers
Variation of Pointers A pointer is a variable whose value is the address of another variable, i.e., direct address of the memory location. Like any variable or constant, you must declare a pointer before
More information2/29/2016. Definition: Computer Program. A simple model of the computer. Example: Computer Program. Data types, variables, constants
Data types, variables, constants Outline.1 Introduction. Text.3 Memory Concepts.4 Naming Convention of Variables.5 Arithmetic in C.6 Type Conversion Definition: Computer Program A Computer program is a
More informationGoals of this Lecture
C Pointers Goals of this Lecture Help you learn about: Pointers and application Pointer variables Operators & relation to arrays 2 Pointer Variables The first step in understanding pointers is visualizing
More informationAssist. Prof. Dr. Caner ÖZCAN
Assist. Prof. Dr. Caner ÖZCAN Memory Structure When a variable defined it is stored somewhere in memory. Memory can be thought as block consist of cells. When a variable defined, required number of cell
More informationBasic and Practice in Programming Lab7
Basic and Practice in Programming Lab7 Variable and Its Address (1/2) What is the variable? Abstracted representation of allocated memory Having address & value Memory address 10 0x00000010 a int a = 10;
More informationCOMPUTER APPLICATION
Total No. of Printed Pages 16 HS/XII/A.Sc.Com/CAP/14 2 0 1 4 COMPUTER APPLICATION ( Science / Arts / Commerce ) ( Theory ) Full Marks : 70 Time : 3 hours The figures in the margin indicate full marks for
More informationFundamentals of Programming Session 12
Fundamentals of Programming Session 12 Instructor: Reza Entezari-Maleki Email: entezari@ce.sharif.edu 1 Fall 2014 These slides have been created using Deitel s slides Sharif University of Technology Outlines
More informationFirst of all, it is a variable, just like other variables you studied
Pointers: Basics What is a pointer? First of all, it is a variable, just like other variables you studied So it has type, storage etc. Difference: it can only store the address (rather than the value)
More informationMore examples for Control statements
More examples for Control statements C language possesses such decision making capabilities and supports the following statements known as control or decision-making statements. 1. if statement 2. switch
More informationData types, variables, constants
Data types, variables, constants Outline 2.1 Introduction 2.2 A Simple C Program: Printing a Line of Text 2.3 Another Simple C Program: Adding Two Integers 2.4 Memory Concepts 2.5 Arithmetic in C 2.6 Decision
More informationESC101N Fundamentals of Computing
ESC101N Fundamentals of Computing Arnab Bhattacharya arnabb@iitk.ac.in Indian Institute of Technology, Kanpur http://www.iitk.ac.in/esc101/ 1 st semester, 2010-11 Tue, Wed, Fri 0800-0900 at L7 Arnab Bhattacharya
More informationIntroduction to C. Systems Programming Concepts
Introduction to C Systems Programming Concepts Introduction to C A simple C Program Variable Declarations printf ( ) Compiling and Running a C Program Sizeof Program #include What is True in C? if example
More informationArrays and Strings. Arash Rafiey. September 12, 2017
September 12, 2017 Arrays Array is a collection of variables with the same data type. Arrays Array is a collection of variables with the same data type. Instead of declaring individual variables, such
More informationMore Pointers Week 11
More Pointers Week 11 Pointer Variable Normal variables Contain a specific value (direct reference) Pointer variables Contain memory addresses as their values countptr count 7 count 7 Pointer Expressions
More informationTechnical Questions. Q 1) What are the key features in C programming language?
Technical Questions Q 1) What are the key features in C programming language? Portability Platform independent language. Modularity Possibility to break down large programs into small modules. Flexibility
More informationM.EC201 Programming language
Power Engineering School M.EC201 Programming language Lecture 13 Lecturer: Prof. Dr. T.Uranchimeg Agenda The union Keyword typedef and Structures What Is Scope? External Variables 2 The union Keyword The
More informationCOMP26120: Pointers in C (2018/19) Lucas Cordeiro
COMP26120: Pointers in C (2018/19) Lucas Cordeiro lucas.cordeiro@manchester.ac.uk Organisation Lucas Cordeiro (Senior Lecturer, FM Group) lucas.cordeiro@manchester.ac.uk Office: 2.44 Office hours: 10-11
More informationLanguage comparison. C has pointers. Java has references. C++ has pointers and references
Pointers CSE 2451 Language comparison C has pointers Java has references C++ has pointers and references Pointers Values of variables are stored in memory, at a particular location A location is identified
More informationChapter 1 & 2 Introduction to C Language
1 Chapter 1 & 2 Introduction to C Language Copyright 2007 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. Chapter 1 & 2 - Introduction to C Language 2 Outline 1.1 The History
More informationPrinciples of Programming. Chapter 6: Arrays
Chapter 6: Arrays In this chapter, you will learn about Introduction to Array Array declaration Array initialization Assigning values to array elements Reading values from array elements Simple Searching
More informationComputer Programming. C Array is a collection of data belongings to the same data type. data_type array_name[array_size];
Arrays An array is a collection of two or more adjacent memory cells, called array elements. Array is derived data type that is used to represent collection of data items. C Array is a collection of data
More informationCS Introduction to Programming Midterm Exam #2 - Prof. Reed Fall 2015
CS 141 - Introduction to Programming Midterm Exam #2 - Prof. Reed Fall 2015 You may take this test with you after the test, but you must turn in your answer sheet. This test has the following sections:
More informationFeatures of C. Portable Procedural / Modular Structured Language Statically typed Middle level language
1 History C is a general-purpose, high-level language that was originally developed by Dennis M. Ritchie to develop the UNIX operating system at Bell Labs. C was originally first implemented on the DEC
More informationActually, C provides another type of variable which allows us to do just that. These are called dynamic variables.
When a program is run, memory space is immediately reserved for the variables defined in the program. This memory space is kept by the variables until the program terminates. These variables are called
More information3/22/2016. Pointer Basics. What is a pointer? C Language III. CMSC 313 Sections 01, 02. pointer = memory address + type
Pointer Basics What is a pointer? pointer = memory address + type C Language III CMSC 313 Sections 01, 02 A pointer can contain the memory address of any variable type A primitive (int, char, float) An
More informationComputer Science & Information Technology (CS) Rank under AIR 100. Examination Oriented Theory, Practice Set Key concepts, Analysis & Summary
GATE- 2016-17 Postal Correspondence 1 C-Programming Computer Science & Information Technology (CS) 20 Rank under AIR 100 Postal Correspondence Examination Oriented Theory, Practice Set Key concepts, Analysis
More information10/20/2015. Midterm Topic Review. Pointer Basics. C Language III. CMSC 313 Sections 01, 02. Adapted from Richard Chang, CMSC 313 Spring 2013
Midterm Topic Review Pointer Basics C Language III CMSC 313 Sections 01, 02 1 What is a pointer? Why Pointers? Pointer Caution pointer = memory address + type A pointer can contain the memory address of
More informationINITIALISING POINTER VARIABLES; DYNAMIC VARIABLES; OPERATIONS ON POINTERS
INITIALISING POINTER VARIABLES; DYNAMIC VARIABLES; OPERATIONS ON POINTERS Pages 792 to 800 Anna Rakitianskaia, University of Pretoria INITIALISING POINTER VARIABLES Pointer variables are declared by putting
More informationIntroduction to C++ Introduction. Structure of a C++ Program. Structure of a C++ Program. C++ widely-used general-purpose programming language
Introduction C++ widely-used general-purpose programming language procedural and object-oriented support strong support created by Bjarne Stroustrup starting in 1979 based on C Introduction to C++ also
More informationA Fast Review of C Essentials Part I
A Fast Review of C Essentials Part I Structural Programming by Z. Cihan TAYSI Outline Program development C Essentials Functions Variables & constants Names Formatting Comments Preprocessor Data types
More informationCSE 2421: Systems I Low-Level Programming and Computer Organization. Functions. Presentation C. Predefined Functions
CSE 2421: Systems I Low-Level Programming and Computer Organization Functions Read/Study: Reek Chapters 7 Gojko Babić 01-22-2018 Predefined Functions C comes with libraries of predefined functions E.g.:
More informationA pointer is a variable just like other variable. The only difference from other variables is that it stores the memory address other variables.
Lecture 9 Pointers A pointer is a variable just like other variable. The only difference from other variables is that it stores the memory address other variables. This variable may be of type int, char,
More informationFunctions. Angela Chih-Wei Tang ( 唐之瑋 ) Department of Communication Engineering National Central University JhongLi, Taiwan.
Functions Angela Chih-Wei Tang ( 唐之瑋 ) Department of Communication Engineering National Central University JhongLi, Taiwan 2009 Fall Outline 5.1 Introduction 5.3 Math Library Functions 5.4 Functions 5.5
More informationIntroduction to C++ with content from
Introduction to C++ with content from www.cplusplus.com 2 Introduction C++ widely-used general-purpose programming language procedural and object-oriented support strong support created by Bjarne Stroustrup
More informationArrays. C Types. Derived. Function Array Pointer Structure Union Enumerated. EE 1910 Winter 2017/18
C Types Derived Function Array Pointer Structure Union Enumerated 2 tj Arrays Student 0 Student 1 Student 2 Student 3 Student 4 Student 0 Student 1 Student 2 Student 3 Student 4 Student[0] Student[1] Student[2]
More informationPrinciples of C and Memory Management
COMP281 Lecture 8 Principles of C and Memory Management Dr Lei Shi Last Lecture Pointer Basics Previous Lectures Arrays, Arithmetic, Functions Last Lecture Pointer Basics Previous Lectures Arrays, Arithmetic,
More informationH192 Midterm 1 Review. Tom Zajdel
H192 Midterm 1 Review Tom Zajdel Declaring variables Need to specify a type when declaring a variable. Can declare multiple variables in one line. int x, y, z; float a, b, c; Can also initialize in same
More informationFunctions, Pointers, and the Basics of C++ Classes
Functions, Pointers, and the Basics of C++ Classes William E. Skeith III Functions in C++ Vocabulary You should be familiar with all of the following terms already, but if not, you will be after today.
More informationThe C Programming Language Part 4. (with material from Dr. Bin Ren, William & Mary Computer Science, and
The C Programming Language Part 4 (with material from Dr. Bin Ren, William & Mary Computer Science, and www.cpp.com) 1 Overview Basic Concepts of Pointers Pointers and Arrays Pointers and Strings Dynamic
More informationswitch case Logic Syntax Basics Functionality Rules Nested switch switch case Comp Sci 1570 Introduction to C++
Comp Sci 1570 Introduction to C++ Outline 1 Outline 1 Outline 1 switch ( e x p r e s s i o n ) { case c o n s t a n t 1 : group of statements 1; break ; case c o n s t a n t 2 : group of statements 2;
More informationWar Industries Presents: An Introduction to Programming for Hackers Part III - Advanced Variables & Flow Control.
War Industries Presents: An Introduction to Programming for Hackers Part III - Advanced Variables & Flow Control By Lovepump, 2004 Visit: www.warindustries.com Part II Programs 101 Goals: At the end of
More informationArrays. Example: Run the below program, it will crash in Windows (TurboC Compiler)
1 Arrays General Questions 1. What will happen if in a C program you assign a value to an array element whose subscript exceeds the size of array? A. The element will be set to 0. B. The compiler would
More informationOutline Arrays Examples of array usage Passing arrays to functions 2D arrays Strings Searching arrays Next Time. C Arrays.
CS 2060 Week 5 1 Arrays Arrays Initializing arrays 2 Examples of array usage 3 Passing arrays to functions 4 2D arrays 2D arrays 5 Strings Using character arrays to store and manipulate strings 6 Searching
More informationDr M Kasim A Jalil. Faculty of Mechanical Engineering UTM (source: Deitel Associates & Pearson)
Lecture 9 Functions Dr M Kasim A Jalil Faculty of Mechanical Engineering UTM (source: Deitel Associates & Pearson) Objectives In this chapter, you will learn: To understand how to construct programs modularly
More informationC for Java Programmers 1. Last Week. Overview of the differences between C and Java. The C language (keywords, types, functies, etc.
C for Java Programmers 1 Last Week Very short history of C Overview of the differences between C and Java The C language (keywords, types, functies, etc.) Compiling (preprocessor, compiler, linker) C for
More informationLecture 02 C FUNDAMENTALS
Lecture 02 C FUNDAMENTALS 1 Keywords C Fundamentals auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void
More informationBSM540 Basics of C Language
BSM540 Basics of C Language Chapter 9: Functions I Prof. Manar Mohaisen Department of EEC Engineering Review of the Precedent Lecture Introduce the switch and goto statements Introduce the arrays in C
More informationDECISION CONTROL AND LOOPING STATEMENTS
DECISION CONTROL AND LOOPING STATEMENTS DECISION CONTROL STATEMENTS Decision control statements are used to alter the flow of a sequence of instructions. These statements help to jump from one part of
More informationBLM2031 Structured Programming. Zeyneb KURT
BLM2031 Structured Programming Zeyneb KURT 1 Contact Contact info office : D-219 e-mail zeynebkurt@gmail.com, zeyneb@ce.yildiz.edu.tr When to contact e-mail first, take an appointment What to expect help
More informationC Programming SYLLABUS COVERAGE SYLLABUS IN DETAILS
C Programming C SYLLABUS COVERAGE Introduction to Programming Fundamentals in C Operators and Expressions Data types Input-Output Library Functions Control statements Function Storage class Pointer Pointer
More informationUNIT 3 FUNCTIONS AND ARRAYS
UNIT 3 FUNCTIONS AND ARRAYS Functions Function definitions and Prototypes Calling Functions Accessing functions Passing arguments to a function - Storage Classes Scope rules Arrays Defining an array processing
More informationAN OVERVIEW OF C, PART 3. CSE 130: Introduction to Programming in C Stony Brook University
AN OVERVIEW OF C, PART 3 CSE 130: Introduction to Programming in C Stony Brook University FANCIER OUTPUT FORMATTING Recall that you can insert a text field width value into a printf() format specifier:
More informationFunction Call Stack and Activation Records
71 Function Call Stack and Activation Records To understand how C performs function calls, we first need to consider a data structure (i.e., collection of related data items) known as a stack. Students
More informationIntroduction to Scientific Computing and Problem Solving
Introduction to Scientific Computing and Problem Solving Lecture #22 Pointers CS4 - Introduction to Scientific Computing and Problem Solving 2010-22.0 Announcements HW8 due tomorrow at 2:30pm What s left:
More informationPointers. Part VI. 1) Introduction. 2) Declaring Pointer Variables. 3) Using Pointers. 4) Pointer Arithmetic. 5) Pointers and Arrays
EE105: Software Engineering II Part 6 Pointers page 1 of 19 Part VI Pointers 1) Introduction 2) Declaring Pointer Variables 3) Using Pointers 4) Pointer Arithmetic 5) Pointers and Arrays 6) Pointers and
More informationProgramming Fundamentals (CS 302 ) Dr. Ihsan Ullah. Lecturer Department of Computer Science & IT University of Balochistan
Programming Fundamentals (CS 302 ) Dr. Ihsan Ullah Lecturer Department of Computer Science & IT University of Balochistan 1 Outline p Introduction p Program development p C language and beginning with
More informationEM108 Software Development for Engineers
EE108 Section 6 Pointers page 1 of 20 EM108 Software Development for Engineers Section 6 - Pointers 1) Introduction 2) Declaring Pointer Variables 3) Using Pointers 4) Pointer Arithmetic 5) Pointers and
More informationHigh Performance Computing
High Performance Computing MPI and C-Language Seminars 2009 Photo Credit: NOAA (IBM Hardware) High Performance Computing - Seminar Plan Seminar Plan for Weeks 1-5 Week 1 - Introduction, Data Types, Control
More informationIntroduction. C provides two styles of flow control:
Introduction C provides two styles of flow control: Branching Looping Branching is deciding what actions to take and looping is deciding how many times to take a certain action. Branching constructs: if
More informationPrepared by: Shraddha Modi
Prepared by: Shraddha Modi Introduction In looping, a sequence of statements are executed until some conditions for termination of the loop are satisfied. A program loop consist of two segments Body of
More information15 FUNCTIONS IN C 15.1 INTRODUCTION
15 FUNCTIONS IN C 15.1 INTRODUCTION In the earlier lessons we have already seen that C supports the use of library functions, which are used to carry out a number of commonly used operations or calculations.
More informationModule 4: Decision-making and forming loops
1 Module 4: Decision-making and forming loops 1. Introduction 2. Decision making 2.1. Simple if statement 2.2. The if else Statement 2.3. Nested if Statement 3. The switch case 4. Forming loops 4.1. The
More informationIntroduction to C Programming. Chih-Wei Tang ( 唐之瑋 ) Department of Communication Engineering National Central University JhongLi, Taiwan
Introduction to C Programming Chih-Wei Tang ( 唐之瑋 ) Department of Communication Engineering National Central University JhongLi, Taiwan Outline Printing texts Adding 2 integers Comparing 2 integers C.E.,
More information