LECTURE 19
Results of Mixed Arithmetic
Expressions
float f_value ;
double d_value ;
char c_value ;
short int s_value ;
long int l_value ;
int i_value ;
c_value * i_value | int |
f_value - 7.3 | double |
d_value + c_value | double |
c_value - s_value | int |
s_value - l_value | long int |
s_value + 7 | int |
s_value - 7.0 | double |
7 + 7.0 | double |
Example Use of Casts
double ratio, q, r ;
q = 7.0 ;
r = 2.0 ;
ratio = (int) q / (int)
r ;
String Functions
strcpy( ) | char *s1, char *s2 | copies s2 to s1 ; returns s1 |
strncpy( ) | char *s1, char *s2, int n | copies at most n characters of s2 to s1 ; returns s1 |
strcat( ) | char *s1, char *s2 | concatenates s2 to end of s1 ; returns s1 |
strncat( ) | char *s1, char *s2, int n | concatenates first n characters of s2 to end of s1 ; returns s1 |
strcmp( ) | char *s1, char *s2 | compares s1 to s2 ; returns < 0 if s1 < s2, 0 if s1 == s2 or > 0 if s1 > s2 |
strlen( ) | char *s1 | returns length of s1 ( not including `\0` ) |
Program
Using String Functions
/* test various functions in string library */ #include <stdio.h> #include <string.h> main ( ) { char string1[ ] = ''document'' ; /* first test string */ char string2[ ] = ''disk'' ; /* second test string */ char s3[20], s4 [20], s5[20] ; /* test string length */ printf(''Length of string 1 is %d\n'', strlen(string1)) ; /* test string copy functions */ strcpy(s3, string2) ; strncpy(s4, string2, 3) ; printf(''Two copied strings are %s and %s \n'', s3, s4) ; /* test string concatenation functions */ strcat(s3, string1) ; strncat(s4, string1, 3) ; printf(''Two concatenated strings are %s and %s \n'', s3, s4) ; /* test string comparison */ if(strcmp(s3, s4)) printf(''Strings are different \n'') ; else printf(''Strings are identical \n'') ; }
OUTPUT :
Length of string1 is 8 Two copied strings are disk and dis Two concatenated strings are disk document and disdoc Strings are different
Function to Compute Length
of a Vector
/* function to compute the length of a vector */ #include <math.h> double length( double v[ ], int n) { double total = 0.0 ; int i ; for( i=0 ; i<n ; i++ ) total += v[i] * v[i] ; return(sqrt(total)) ; }
Function to Compute Inner
Product of Two Vectors
/* function to compute an inner product */ double inner_product( double v[ ], double w[ ], int n ) { double total = 0.0 ; int i ; for ( i=0 ; i<n ; i++ ) total += v[i] * w[i] ; return(total) ; }
Go back to lecture menu
Go back to main page