Skip to content
Snippets Groups Projects
Select Git revision
  • bb52e634a64af479d1bf79e2ac4bfd1ad80fb0ad
  • main default protected
  • asm-example
  • c-example
  • java-example
5 results

wrapper.c

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    wrapper.c 510 B
    #include <stdio.h>
    #include <stdlib.h>
    #include <stdbool.h>
    #include <inttypes.h>
    
    extern uint64_t collatz(uint64_t);
    
    int main(int argc, char* argv[]) {
    	if(argc < 2) {
    		fputs("Not enough arguments!\n", stderr);
    		return EXIT_FAILURE;
    	}
    
    	char* test = NULL;
    	uint64_t val = strtoull(argv[1], &test, 10);
    	if(*test) {
    		fprintf(stderr,"Invalid Argument: %s\n", argv[1]);
    		return EXIT_FAILURE;
    	}
    
    	uint64_t res = collatz(val);
    	printf("collatz(%"PRIu64") = %"PRIu64"\n", val, res);
    
    	return EXIT_SUCCESS;
    }