First Upload
This commit is contained in:
66
10/ex1.c
Normal file
66
10/ex1.c
Normal file
@@ -0,0 +1,66 @@
|
||||
#include <stdio.h>
|
||||
#include "IdanStringPointersLib.h"
|
||||
|
||||
#define STRING_MAX_SIZE 256
|
||||
|
||||
|
||||
|
||||
//---------------------------------------------------------------------------------------
|
||||
// CountStringBInStringA
|
||||
// ---------------------
|
||||
//
|
||||
// General : Counting how many times stringB in stringA.
|
||||
//
|
||||
// Parameters :
|
||||
// *start_string_a - Pointer of first string (char[])
|
||||
// *start_string_b - Pointer of second string (char[])
|
||||
//
|
||||
// Return value : Count second string in first string (unsigned int).
|
||||
//
|
||||
//---------------------------------------------------------------------------------------
|
||||
// Programmer : Cohen Idan
|
||||
// Student No : 211675038
|
||||
// Date : 12.11.19
|
||||
//---------------------------------------------------------------------------------------
|
||||
unsigned int CountStringBInStringA(char *start_string_a, char *start_string_b)
|
||||
{
|
||||
char *ptr_string_a_temp = start_string_a;
|
||||
char temp = BACKSLASH_ZERO;
|
||||
unsigned short count = ZERO;
|
||||
unsigned short textB_lenght = StringLenght(start_string_b);
|
||||
char *address = (ptr_string_a_temp + textB_lenght);
|
||||
while (*(address - ONE))
|
||||
{
|
||||
SwapChars(&temp, address);
|
||||
count += StringCompare(ptr_string_a_temp, start_string_b);
|
||||
SwapChars(&temp, address);
|
||||
address = ((++ptr_string_a_temp) + textB_lenght);
|
||||
}
|
||||
|
||||
return (count);
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------
|
||||
// exe 1
|
||||
// -----
|
||||
// General : the program goes over the string and checks how many
|
||||
// appearences the substring makes.
|
||||
//
|
||||
// Input : a string and a word/sub-string to search for.
|
||||
//
|
||||
// Process : the program takes the sub-string and checks if the
|
||||
// string has the same sequence of chars in it.
|
||||
//
|
||||
// Output : The times it has shown up in the string.
|
||||
//-----------------------------------------------------------------
|
||||
// Proggramer : Cohen Idan
|
||||
// Student No : 211675038
|
||||
// Date : 12.11.19
|
||||
//-----------------------------------------------------------------
|
||||
void main(void)
|
||||
{
|
||||
char stringA[STRING_MAX_SIZE] = "aaaaaaaaaaaababbbbbbbbbab";
|
||||
char stringB[STRING_MAX_SIZE] = "ab";
|
||||
printf("Count: %d\n", CountStringBInStringA(&stringA[ZERO], &stringB[ZERO]));
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user