| | |
| | | #include <limits.h> |
| | | #ifdef WIN32 |
| | | #include "unistd.h" |
| | | #include "gettimeofday.h" |
| | | #else |
| | | #include <unistd.h> |
| | | #include <sys/time.h> |
| | | #endif |
| | | #include "utils.h" |
| | | |
| | | #pragma warning(disable: 4996) |
| | | |
| | | double what_time_is_it_now() |
| | | { |
| | | struct timeval time; |
| | | if (gettimeofday(&time, NULL)) { |
| | | return 0; |
| | | } |
| | | return (double)time.tv_sec + (double)time.tv_usec * .000001; |
| | | } |
| | | |
| | | int *read_map(char *filename) |
| | | { |
| | | int n = 0; |
| | |
| | | { |
| | | perror(s); |
| | | assert(0); |
| | | exit(-1); |
| | | exit(EXIT_FAILURE); |
| | | } |
| | | |
| | | void malloc_error() |
| | | { |
| | | fprintf(stderr, "Malloc error\n"); |
| | | exit(-1); |
| | | exit(EXIT_FAILURE); |
| | | } |
| | | |
| | | void file_error(char *s) |
| | | { |
| | | fprintf(stderr, "Couldn't open file: %s\n", s); |
| | | exit(0); |
| | | exit(EXIT_FAILURE); |
| | | } |
| | | |
| | | list *split_str(char *s, char delim) |
| | |
| | | fgets(&line[curr], readsize, fp); |
| | | curr = strlen(line); |
| | | } |
| | | if(line[curr-2] == 0x0d) line[curr-2] = 0x00; |
| | | if(line[curr-1] == 0x0a) line[curr-1] = 0x00; |
| | | if(curr >= 2) |
| | | if(line[curr-2] == 0x0d) line[curr-2] = 0x00; |
| | | |
| | | if(curr >= 1) |
| | | if(line[curr-1] == 0x0a) line[curr-1] = 0x00; |
| | | |
| | | return line; |
| | | } |
| | |
| | | return max_i; |
| | | } |
| | | |
| | | int int_index(int *a, int val, int n) |
| | | { |
| | | int i; |
| | | for (i = 0; i < n; ++i) { |
| | | if (a[i] == val) return i; |
| | | } |
| | | return -1; |
| | | } |
| | | |
| | | int rand_int(int min, int max) |
| | | { |
| | | if (max < min){ |