Home > Software design >  Unique character count function does not take into consideration all lines (C)
Unique character count function does not take into consideration all lines (C)

Time:11-02

My goal is to write a function, that calculates the number of all the unique characters from a redirected text file (meaning until EOF is reached). The code I wrote:

#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#define ASCII_VALS 128

int strLen (char inp[])
{   
    int len = 0;
    
    for(int i = 0; inp[i] != '\0'; i  ){
        len  ;
    
    }
    return len;

}
int countUniqueChars (char inp[])
{
    int everyCharValArr[ASCII_VALS] = {0};
    int i, j = 0;
    
    for(i = 0; i < strLen(inp); i  ){
        int convToInt = inp[i] - '0';
        everyCharValArr[convToInt] = 1;
    }
    for (i = 0; i < ASCII_VALS; i  ) {
        j  = everyCharValArr[i];
    }

    return j;


}

works for one string entered via scanf() like so:

int main ()
{
    char inp[100];
    printf("Enter a string: \n");
    scanf("           
  • Related