generated from blizzardfinnegan/advent-of-code
Move to CMake from make
Allows for Language Server setup, and less typing on my part
This commit is contained in:
parent
d72418da5b
commit
eba12afb88
9 changed files with 16 additions and 3853 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -74,3 +74,5 @@ replay_pid*
|
|||
*.out
|
||||
*.app
|
||||
|
||||
*/build/
|
||||
.ccls-cache/
|
||||
|
|
7
day01/CMakeLists.txt
Normal file
7
day01/CMakeLists.txt
Normal file
|
@ -0,0 +1,7 @@
|
|||
CMAKE_MINIMUM_REQUIRED(VERSION 3.10)
|
||||
SET(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
|
||||
PROJECT(day01 C)
|
||||
|
||||
ADD_EXECUTABLE(Part1 src/part1.c)
|
||||
ADD_EXECUTABLE(Part2 src/part2.c)
|
|
@ -1,29 +0,0 @@
|
|||
PROJ = day01
|
||||
CXX=gcc
|
||||
BUILD=build
|
||||
CXXFLAGS= -Wall -Werror -Wextra -Wpointer-arith -Wswitch-enum -Wswitch-default -Wunreachable-code -Wstrict-prototypes -Wfloat-equal -Wcast-align -fverbose-asm -finstrument-functions --coverage -Og -Winit-self -save-temps -dumpdir build/part -g -pedantic -ansi -masm=intel -Werror-implicit-function-declaration
|
||||
|
||||
.PHONY: clean
|
||||
|
||||
part1Build:
|
||||
( [ -d build ] || mkdir build )
|
||||
$(CXX) $(CXXFLAGS) -dumpbase 1 src/part1.c -o part1.out
|
||||
|
||||
part1Test: part1Build
|
||||
./part1.out data/testInput.txt
|
||||
|
||||
part1Run: part1Build
|
||||
./part1.out data/input.txt
|
||||
|
||||
part2Build:
|
||||
( [ -d build ] || mkdir build )
|
||||
$(CXX) $(CXXFLAGS) -dumpbase 2 src/part2.c -o part2.out
|
||||
|
||||
part2Test: part2Build
|
||||
./part2.out data/testInput.txt
|
||||
|
||||
part2Run: part2Build
|
||||
./part2.out data/input.txt
|
||||
|
||||
clean:
|
||||
rm -rf $(BUILD) *.out
|
7
day02/CMakeLists.txt
Normal file
7
day02/CMakeLists.txt
Normal file
|
@ -0,0 +1,7 @@
|
|||
CMAKE_MINIMUM_REQUIRED(VERSION 3.10)
|
||||
SET(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
|
||||
PROJECT(day02 C)
|
||||
|
||||
ADD_EXECUTABLE(Part1 src/part1.c)
|
||||
#ADD_EXECUTABLE(Part2 src/part2.c)
|
|
@ -1,28 +0,0 @@
|
|||
PROJ = day01
|
||||
CXX=gcc
|
||||
BUILD=build
|
||||
CXXFLAGS= -g -Wall -Werror -Wextra -Wpointer-arith -Wswitch-enum -Wswitch-default -Wunreachable-code -Wstrict-prototypes -Wfloat-equal -Wcast-align -fverbose-asm -finstrument-functions --coverage -Og -Winit-self -save-temps -dumpdir build/part -g -pedantic -ansi -masm=intel -Werror-implicit-function-declaration
|
||||
|
||||
.PHONY: clean
|
||||
|
||||
part1Build:
|
||||
( [ -d build ] || mkdir build )
|
||||
$(CXX) $(CXXFLAGS) -dumpbase 1 src/part1.c -o part1.out
|
||||
|
||||
part1Test: part1Build
|
||||
./part1.out data/testInput.txt
|
||||
|
||||
part1Run: part1Build
|
||||
./part1.out data/input.txt
|
||||
|
||||
part2Build:
|
||||
$(CXX) $(CXXFLAGS) -dumpbase 2 src/part2.c -o part2.out
|
||||
|
||||
part2Test: part2Build
|
||||
./part2.out data/testInput.txt
|
||||
|
||||
part2Run: part2Build
|
||||
./part2.out data/input.txt
|
||||
|
||||
clean:
|
||||
rm -rf $(BUILD) *.out
|
Binary file not shown.
Binary file not shown.
|
@ -1,942 +0,0 @@
|
|||
# 0 "src/part1.c"
|
||||
# 1 "/home/bluestar/Documents/aoc/advent-of-code-2020/day02//"
|
||||
# 0 "<built-in>"
|
||||
# 0 "<command-line>"
|
||||
# 1 "/usr/include/stdc-predef.h" 1 3 4
|
||||
# 0 "<command-line>" 2
|
||||
# 1 "src/part1.c"
|
||||
# 1 "/usr/include/stdio.h" 1 3 4
|
||||
# 27 "/usr/include/stdio.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/libc-header-start.h" 1 3 4
|
||||
# 33 "/usr/include/x86_64-linux-gnu/bits/libc-header-start.h" 3 4
|
||||
# 1 "/usr/include/features.h" 1 3 4
|
||||
# 392 "/usr/include/features.h" 3 4
|
||||
# 1 "/usr/include/features-time64.h" 1 3 4
|
||||
# 20 "/usr/include/features-time64.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
|
||||
# 21 "/usr/include/features-time64.h" 2 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/timesize.h" 1 3 4
|
||||
# 19 "/usr/include/x86_64-linux-gnu/bits/timesize.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
|
||||
# 20 "/usr/include/x86_64-linux-gnu/bits/timesize.h" 2 3 4
|
||||
# 22 "/usr/include/features-time64.h" 2 3 4
|
||||
# 393 "/usr/include/features.h" 2 3 4
|
||||
# 489 "/usr/include/features.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 1 3 4
|
||||
# 561 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
|
||||
# 562 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 2 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/long-double.h" 1 3 4
|
||||
# 563 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 2 3 4
|
||||
# 490 "/usr/include/features.h" 2 3 4
|
||||
# 513 "/usr/include/features.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/gnu/stubs.h" 1 3 4
|
||||
# 10 "/usr/include/x86_64-linux-gnu/gnu/stubs.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" 1 3 4
|
||||
# 11 "/usr/include/x86_64-linux-gnu/gnu/stubs.h" 2 3 4
|
||||
# 514 "/usr/include/features.h" 2 3 4
|
||||
# 34 "/usr/include/x86_64-linux-gnu/bits/libc-header-start.h" 2 3 4
|
||||
# 28 "/usr/include/stdio.h" 2 3 4
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# 1 "/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h" 1 3 4
|
||||
# 214 "/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h" 3 4
|
||||
|
||||
# 214 "/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h" 3 4
|
||||
typedef long unsigned int size_t;
|
||||
# 34 "/usr/include/stdio.h" 2 3 4
|
||||
|
||||
|
||||
# 1 "/usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h" 1 3 4
|
||||
# 40 "/usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h" 3 4
|
||||
typedef __builtin_va_list __gnuc_va_list;
|
||||
# 37 "/usr/include/stdio.h" 2 3 4
|
||||
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
|
||||
# 27 "/usr/include/x86_64-linux-gnu/bits/types.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
|
||||
# 28 "/usr/include/x86_64-linux-gnu/bits/types.h" 2 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/timesize.h" 1 3 4
|
||||
# 19 "/usr/include/x86_64-linux-gnu/bits/timesize.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
|
||||
# 20 "/usr/include/x86_64-linux-gnu/bits/timesize.h" 2 3 4
|
||||
# 29 "/usr/include/x86_64-linux-gnu/bits/types.h" 2 3 4
|
||||
|
||||
|
||||
typedef unsigned char __u_char;
|
||||
typedef unsigned short int __u_short;
|
||||
typedef unsigned int __u_int;
|
||||
typedef unsigned long int __u_long;
|
||||
|
||||
|
||||
typedef signed char __int8_t;
|
||||
typedef unsigned char __uint8_t;
|
||||
typedef signed short int __int16_t;
|
||||
typedef unsigned short int __uint16_t;
|
||||
typedef signed int __int32_t;
|
||||
typedef unsigned int __uint32_t;
|
||||
|
||||
typedef signed long int __int64_t;
|
||||
typedef unsigned long int __uint64_t;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
typedef __int8_t __int_least8_t;
|
||||
typedef __uint8_t __uint_least8_t;
|
||||
typedef __int16_t __int_least16_t;
|
||||
typedef __uint16_t __uint_least16_t;
|
||||
typedef __int32_t __int_least32_t;
|
||||
typedef __uint32_t __uint_least32_t;
|
||||
typedef __int64_t __int_least64_t;
|
||||
typedef __uint64_t __uint_least64_t;
|
||||
|
||||
|
||||
|
||||
typedef long int __quad_t;
|
||||
typedef unsigned long int __u_quad_t;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
typedef long int __intmax_t;
|
||||
typedef unsigned long int __uintmax_t;
|
||||
# 141 "/usr/include/x86_64-linux-gnu/bits/types.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/typesizes.h" 1 3 4
|
||||
# 142 "/usr/include/x86_64-linux-gnu/bits/types.h" 2 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/time64.h" 1 3 4
|
||||
# 143 "/usr/include/x86_64-linux-gnu/bits/types.h" 2 3 4
|
||||
|
||||
|
||||
typedef unsigned long int __dev_t;
|
||||
typedef unsigned int __uid_t;
|
||||
typedef unsigned int __gid_t;
|
||||
typedef unsigned long int __ino_t;
|
||||
typedef unsigned long int __ino64_t;
|
||||
typedef unsigned int __mode_t;
|
||||
typedef unsigned long int __nlink_t;
|
||||
typedef long int __off_t;
|
||||
typedef long int __off64_t;
|
||||
typedef int __pid_t;
|
||||
typedef struct { int __val[2]; } __fsid_t;
|
||||
typedef long int __clock_t;
|
||||
typedef unsigned long int __rlim_t;
|
||||
typedef unsigned long int __rlim64_t;
|
||||
typedef unsigned int __id_t;
|
||||
typedef long int __time_t;
|
||||
typedef unsigned int __useconds_t;
|
||||
typedef long int __suseconds_t;
|
||||
typedef long int __suseconds64_t;
|
||||
|
||||
typedef int __daddr_t;
|
||||
typedef int __key_t;
|
||||
|
||||
|
||||
typedef int __clockid_t;
|
||||
|
||||
|
||||
typedef void * __timer_t;
|
||||
|
||||
|
||||
typedef long int __blksize_t;
|
||||
|
||||
|
||||
|
||||
|
||||
typedef long int __blkcnt_t;
|
||||
typedef long int __blkcnt64_t;
|
||||
|
||||
|
||||
typedef unsigned long int __fsblkcnt_t;
|
||||
typedef unsigned long int __fsblkcnt64_t;
|
||||
|
||||
|
||||
typedef unsigned long int __fsfilcnt_t;
|
||||
typedef unsigned long int __fsfilcnt64_t;
|
||||
|
||||
|
||||
typedef long int __fsword_t;
|
||||
|
||||
typedef long int __ssize_t;
|
||||
|
||||
|
||||
typedef long int __syscall_slong_t;
|
||||
|
||||
typedef unsigned long int __syscall_ulong_t;
|
||||
|
||||
|
||||
|
||||
typedef __off64_t __loff_t;
|
||||
typedef char *__caddr_t;
|
||||
|
||||
|
||||
typedef long int __intptr_t;
|
||||
|
||||
|
||||
typedef unsigned int __socklen_t;
|
||||
|
||||
|
||||
|
||||
|
||||
typedef int __sig_atomic_t;
|
||||
# 39 "/usr/include/stdio.h" 2 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h" 1 3 4
|
||||
|
||||
|
||||
|
||||
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h" 1 3 4
|
||||
# 13 "/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h" 3 4
|
||||
typedef struct
|
||||
{
|
||||
int __count;
|
||||
union
|
||||
{
|
||||
unsigned int __wch;
|
||||
char __wchb[4];
|
||||
} __value;
|
||||
} __mbstate_t;
|
||||
# 6 "/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h" 2 3 4
|
||||
|
||||
|
||||
|
||||
|
||||
typedef struct _G_fpos_t
|
||||
{
|
||||
__off_t __pos;
|
||||
__mbstate_t __state;
|
||||
} __fpos_t;
|
||||
# 40 "/usr/include/stdio.h" 2 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h" 1 3 4
|
||||
# 10 "/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h" 3 4
|
||||
typedef struct _G_fpos64_t
|
||||
{
|
||||
__off64_t __pos;
|
||||
__mbstate_t __state;
|
||||
} __fpos64_t;
|
||||
# 41 "/usr/include/stdio.h" 2 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/types/__FILE.h" 1 3 4
|
||||
|
||||
|
||||
|
||||
struct _IO_FILE;
|
||||
typedef struct _IO_FILE __FILE;
|
||||
# 42 "/usr/include/stdio.h" 2 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/types/FILE.h" 1 3 4
|
||||
|
||||
|
||||
|
||||
struct _IO_FILE;
|
||||
|
||||
|
||||
typedef struct _IO_FILE FILE;
|
||||
# 43 "/usr/include/stdio.h" 2 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h" 1 3 4
|
||||
# 35 "/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h" 3 4
|
||||
struct _IO_FILE;
|
||||
struct _IO_marker;
|
||||
struct _IO_codecvt;
|
||||
struct _IO_wide_data;
|
||||
|
||||
|
||||
|
||||
|
||||
typedef void _IO_lock_t;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
struct _IO_FILE
|
||||
{
|
||||
int _flags;
|
||||
|
||||
|
||||
char *_IO_read_ptr;
|
||||
char *_IO_read_end;
|
||||
char *_IO_read_base;
|
||||
char *_IO_write_base;
|
||||
char *_IO_write_ptr;
|
||||
char *_IO_write_end;
|
||||
char *_IO_buf_base;
|
||||
char *_IO_buf_end;
|
||||
|
||||
|
||||
char *_IO_save_base;
|
||||
char *_IO_backup_base;
|
||||
char *_IO_save_end;
|
||||
|
||||
struct _IO_marker *_markers;
|
||||
|
||||
struct _IO_FILE *_chain;
|
||||
|
||||
int _fileno;
|
||||
int _flags2;
|
||||
__off_t _old_offset;
|
||||
|
||||
|
||||
unsigned short _cur_column;
|
||||
signed char _vtable_offset;
|
||||
char _shortbuf[1];
|
||||
|
||||
_IO_lock_t *_lock;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
__off64_t _offset;
|
||||
|
||||
struct _IO_codecvt *_codecvt;
|
||||
struct _IO_wide_data *_wide_data;
|
||||
struct _IO_FILE *_freeres_list;
|
||||
void *_freeres_buf;
|
||||
size_t __pad5;
|
||||
int _mode;
|
||||
|
||||
char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];
|
||||
};
|
||||
# 44 "/usr/include/stdio.h" 2 3 4
|
||||
# 84 "/usr/include/stdio.h" 3 4
|
||||
typedef __fpos_t fpos_t;
|
||||
# 133 "/usr/include/stdio.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" 1 3 4
|
||||
# 134 "/usr/include/stdio.h" 2 3 4
|
||||
# 143 "/usr/include/stdio.h" 3 4
|
||||
extern FILE *stdin;
|
||||
extern FILE *stdout;
|
||||
extern FILE *stderr;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
extern int remove (const char *__filename) __attribute__ ((__nothrow__ , __leaf__));
|
||||
|
||||
extern int rename (const char *__old, const char *__new) __attribute__ ((__nothrow__ , __leaf__));
|
||||
# 178 "/usr/include/stdio.h" 3 4
|
||||
extern int fclose (FILE *__stream);
|
||||
# 188 "/usr/include/stdio.h" 3 4
|
||||
extern FILE *tmpfile (void)
|
||||
__attribute__ ((__malloc__)) __attribute__ ((__malloc__ (fclose, 1))) ;
|
||||
# 205 "/usr/include/stdio.h" 3 4
|
||||
extern char *tmpnam (char[20]) __attribute__ ((__nothrow__ , __leaf__)) ;
|
||||
# 230 "/usr/include/stdio.h" 3 4
|
||||
extern int fflush (FILE *__stream);
|
||||
# 258 "/usr/include/stdio.h" 3 4
|
||||
extern FILE *fopen (const char *__restrict __filename,
|
||||
const char *__restrict __modes)
|
||||
__attribute__ ((__malloc__)) __attribute__ ((__malloc__ (fclose, 1))) ;
|
||||
|
||||
|
||||
|
||||
|
||||
extern FILE *freopen (const char *__restrict __filename,
|
||||
const char *__restrict __modes,
|
||||
FILE *__restrict __stream) ;
|
||||
# 328 "/usr/include/stdio.h" 3 4
|
||||
extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __attribute__ ((__nothrow__ , __leaf__));
|
||||
|
||||
|
||||
|
||||
extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
|
||||
int __modes, size_t __n) __attribute__ ((__nothrow__ , __leaf__));
|
||||
# 350 "/usr/include/stdio.h" 3 4
|
||||
extern int fprintf (FILE *__restrict __stream,
|
||||
const char *__restrict __format, ...);
|
||||
|
||||
|
||||
|
||||
|
||||
extern int printf (const char *__restrict __format, ...);
|
||||
|
||||
extern int sprintf (char *__restrict __s,
|
||||
const char *__restrict __format, ...) __attribute__ ((__nothrow__));
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
extern int vfprintf (FILE *__restrict __s, const char *__restrict __format,
|
||||
__gnuc_va_list __arg);
|
||||
|
||||
|
||||
|
||||
|
||||
extern int vprintf (const char *__restrict __format, __gnuc_va_list __arg);
|
||||
|
||||
extern int vsprintf (char *__restrict __s, const char *__restrict __format,
|
||||
__gnuc_va_list __arg) __attribute__ ((__nothrow__));
|
||||
# 415 "/usr/include/stdio.h" 3 4
|
||||
extern int fscanf (FILE *__restrict __stream,
|
||||
const char *__restrict __format, ...) ;
|
||||
|
||||
|
||||
|
||||
|
||||
extern int scanf (const char *__restrict __format, ...) ;
|
||||
|
||||
extern int sscanf (const char *__restrict __s,
|
||||
const char *__restrict __format, ...) __attribute__ ((__nothrow__ , __leaf__));
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/floatn.h" 1 3 4
|
||||
# 120 "/usr/include/x86_64-linux-gnu/bits/floatn.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/floatn-common.h" 1 3 4
|
||||
# 24 "/usr/include/x86_64-linux-gnu/bits/floatn-common.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/long-double.h" 1 3 4
|
||||
# 25 "/usr/include/x86_64-linux-gnu/bits/floatn-common.h" 2 3 4
|
||||
# 121 "/usr/include/x86_64-linux-gnu/bits/floatn.h" 2 3 4
|
||||
# 431 "/usr/include/stdio.h" 2 3 4
|
||||
|
||||
|
||||
|
||||
extern int fscanf (FILE *__restrict __stream, const char *__restrict __format, ...) __asm__ ("" "__isoc99_fscanf")
|
||||
|
||||
;
|
||||
extern int scanf (const char *__restrict __format, ...) __asm__ ("" "__isoc99_scanf")
|
||||
;
|
||||
extern int sscanf (const char *__restrict __s, const char *__restrict __format, ...) __asm__ ("" "__isoc99_sscanf") __attribute__ ((__nothrow__ , __leaf__))
|
||||
|
||||
;
|
||||
# 513 "/usr/include/stdio.h" 3 4
|
||||
extern int fgetc (FILE *__stream);
|
||||
extern int getc (FILE *__stream);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
extern int getchar (void);
|
||||
# 549 "/usr/include/stdio.h" 3 4
|
||||
extern int fputc (int __c, FILE *__stream);
|
||||
extern int putc (int __c, FILE *__stream);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
extern int putchar (int __c);
|
||||
# 592 "/usr/include/stdio.h" 3 4
|
||||
extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
|
||||
__attribute__ ((__access__ (__write_only__, 1, 2)));
|
||||
# 605 "/usr/include/stdio.h" 3 4
|
||||
extern char *gets (char *__s) __attribute__ ((__deprecated__));
|
||||
# 655 "/usr/include/stdio.h" 3 4
|
||||
extern int fputs (const char *__restrict __s, FILE *__restrict __stream);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
extern int puts (const char *__s);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
extern int ungetc (int __c, FILE *__stream);
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
extern size_t fread (void *__restrict __ptr, size_t __size,
|
||||
size_t __n, FILE *__restrict __stream) ;
|
||||
|
||||
|
||||
|
||||
|
||||
extern size_t fwrite (const void *__restrict __ptr, size_t __size,
|
||||
size_t __n, FILE *__restrict __s);
|
||||
# 713 "/usr/include/stdio.h" 3 4
|
||||
extern int fseek (FILE *__stream, long int __off, int __whence);
|
||||
|
||||
|
||||
|
||||
|
||||
extern long int ftell (FILE *__stream) ;
|
||||
|
||||
|
||||
|
||||
|
||||
extern void rewind (FILE *__stream);
|
||||
# 760 "/usr/include/stdio.h" 3 4
|
||||
extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos);
|
||||
|
||||
|
||||
|
||||
|
||||
extern int fsetpos (FILE *__stream, const fpos_t *__pos);
|
||||
# 786 "/usr/include/stdio.h" 3 4
|
||||
extern void clearerr (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
|
||||
|
||||
extern int feof (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ;
|
||||
|
||||
extern int ferror (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) ;
|
||||
# 804 "/usr/include/stdio.h" 3 4
|
||||
extern void perror (const char *__s);
|
||||
# 885 "/usr/include/stdio.h" 3 4
|
||||
extern int __uflow (FILE *);
|
||||
extern int __overflow (FILE *, int);
|
||||
# 902 "/usr/include/stdio.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/stdio.h" 1 3 4
|
||||
# 38 "/usr/include/x86_64-linux-gnu/bits/stdio.h" 3 4
|
||||
extern __inline int
|
||||
vprintf (const char *__restrict __fmt, __gnuc_va_list __arg)
|
||||
{
|
||||
return vfprintf (stdout, __fmt, __arg);
|
||||
}
|
||||
|
||||
|
||||
|
||||
extern __inline int
|
||||
getchar (void)
|
||||
{
|
||||
return getc (stdin);
|
||||
}
|
||||
# 81 "/usr/include/x86_64-linux-gnu/bits/stdio.h" 3 4
|
||||
extern __inline int
|
||||
putchar (int __c)
|
||||
{
|
||||
return putc (__c, stdout);
|
||||
}
|
||||
# 903 "/usr/include/stdio.h" 2 3 4
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# 2 "src/part1.c" 2
|
||||
# 1 "/usr/include/stdlib.h" 1 3 4
|
||||
# 26 "/usr/include/stdlib.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/libc-header-start.h" 1 3 4
|
||||
# 27 "/usr/include/stdlib.h" 2 3 4
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# 1 "/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h" 1 3 4
|
||||
# 329 "/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h" 3 4
|
||||
typedef int wchar_t;
|
||||
# 33 "/usr/include/stdlib.h" 2 3 4
|
||||
|
||||
|
||||
# 59 "/usr/include/stdlib.h" 3 4
|
||||
typedef struct
|
||||
{
|
||||
int quot;
|
||||
int rem;
|
||||
} div_t;
|
||||
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
long int quot;
|
||||
long int rem;
|
||||
} ldiv_t;
|
||||
# 98 "/usr/include/stdlib.h" 3 4
|
||||
extern size_t __ctype_get_mb_cur_max (void) __attribute__ ((__nothrow__ , __leaf__)) ;
|
||||
|
||||
|
||||
|
||||
extern double atof (const char *__nptr)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
|
||||
|
||||
extern int atoi (const char *__nptr)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
|
||||
|
||||
extern long int atol (const char *__nptr)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) ;
|
||||
# 118 "/usr/include/stdlib.h" 3 4
|
||||
extern double strtod (const char *__restrict __nptr,
|
||||
char **__restrict __endptr)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
|
||||
# 177 "/usr/include/stdlib.h" 3 4
|
||||
extern long int strtol (const char *__restrict __nptr,
|
||||
char **__restrict __endptr, int __base)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
|
||||
|
||||
extern unsigned long int strtoul (const char *__restrict __nptr,
|
||||
char **__restrict __endptr, int __base)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
|
||||
# 361 "/usr/include/stdlib.h" 3 4
|
||||
extern __inline int
|
||||
__attribute__ ((__nothrow__ , __leaf__)) atoi (const char *__nptr)
|
||||
{
|
||||
return (int) strtol (__nptr, (char **) ((void *)0), 10);
|
||||
}
|
||||
extern __inline long int
|
||||
__attribute__ ((__nothrow__ , __leaf__)) atol (const char *__nptr)
|
||||
{
|
||||
return strtol (__nptr, (char **) ((void *)0), 10);
|
||||
}
|
||||
# 454 "/usr/include/stdlib.h" 3 4
|
||||
extern int rand (void) __attribute__ ((__nothrow__ , __leaf__));
|
||||
|
||||
extern void srand (unsigned int __seed) __attribute__ ((__nothrow__ , __leaf__));
|
||||
# 553 "/usr/include/stdlib.h" 3 4
|
||||
extern void *malloc (size_t __size) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__))
|
||||
__attribute__ ((__alloc_size__ (1))) ;
|
||||
|
||||
extern void *calloc (size_t __nmemb, size_t __size)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) __attribute__ ((__alloc_size__ (1, 2))) ;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
extern void *realloc (void *__ptr, size_t __size)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__)) __attribute__ ((__alloc_size__ (2)));
|
||||
|
||||
|
||||
extern void free (void *__ptr) __attribute__ ((__nothrow__ , __leaf__));
|
||||
# 611 "/usr/include/stdlib.h" 3 4
|
||||
extern void abort (void) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
|
||||
|
||||
|
||||
|
||||
extern int atexit (void (*__func) (void)) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
|
||||
# 637 "/usr/include/stdlib.h" 3 4
|
||||
extern void exit (int __status) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
|
||||
# 654 "/usr/include/stdlib.h" 3 4
|
||||
extern char *getenv (const char *__name) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) ;
|
||||
# 804 "/usr/include/stdlib.h" 3 4
|
||||
extern int system (const char *__command) ;
|
||||
# 829 "/usr/include/stdlib.h" 3 4
|
||||
typedef int (*__compar_fn_t) (const void *, const void *);
|
||||
# 841 "/usr/include/stdlib.h" 3 4
|
||||
extern void *bsearch (const void *__key, const void *__base,
|
||||
size_t __nmemb, size_t __size, __compar_fn_t __compar)
|
||||
__attribute__ ((__nonnull__ (1, 2, 5))) ;
|
||||
|
||||
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" 1 3 4
|
||||
# 19 "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" 3 4
|
||||
extern __inline void *
|
||||
bsearch (const void *__key, const void *__base, size_t __nmemb, size_t __size,
|
||||
__compar_fn_t __compar)
|
||||
{
|
||||
size_t __l, __u, __idx;
|
||||
const void *__p;
|
||||
int __comparison;
|
||||
|
||||
__l = 0;
|
||||
__u = __nmemb;
|
||||
while (__l < __u)
|
||||
{
|
||||
__idx = (__l + __u) / 2;
|
||||
__p = (const void *) (((const char *) __base) + (__idx * __size));
|
||||
__comparison = (*__compar) (__key, __p);
|
||||
if (__comparison < 0)
|
||||
__u = __idx;
|
||||
else if (__comparison > 0)
|
||||
__l = __idx + 1;
|
||||
else
|
||||
{
|
||||
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wcast-qual"
|
||||
|
||||
return (void *) __p;
|
||||
|
||||
#pragma GCC diagnostic pop
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return ((void *)0);
|
||||
}
|
||||
# 847 "/usr/include/stdlib.h" 2 3 4
|
||||
|
||||
|
||||
|
||||
|
||||
extern void qsort (void *__base, size_t __nmemb, size_t __size,
|
||||
__compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4)));
|
||||
# 861 "/usr/include/stdlib.h" 3 4
|
||||
extern int abs (int __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) ;
|
||||
extern long int labs (long int __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) ;
|
||||
# 873 "/usr/include/stdlib.h" 3 4
|
||||
extern div_t div (int __numer, int __denom)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) ;
|
||||
extern ldiv_t ldiv (long int __numer, long int __denom)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) ;
|
||||
# 943 "/usr/include/stdlib.h" 3 4
|
||||
extern int mblen (const char *__s, size_t __n) __attribute__ ((__nothrow__ , __leaf__));
|
||||
|
||||
|
||||
extern int mbtowc (wchar_t *__restrict __pwc,
|
||||
const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__ , __leaf__));
|
||||
|
||||
|
||||
extern int wctomb (char *__s, wchar_t __wchar) __attribute__ ((__nothrow__ , __leaf__));
|
||||
|
||||
|
||||
|
||||
extern size_t mbstowcs (wchar_t *__restrict __pwcs,
|
||||
const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__ , __leaf__))
|
||||
__attribute__ ((__access__ (__read_only__, 2)));
|
||||
|
||||
extern size_t wcstombs (char *__restrict __s,
|
||||
const wchar_t *__restrict __pwcs, size_t __n)
|
||||
__attribute__ ((__nothrow__ , __leaf__))
|
||||
__attribute__ ((__access__ (__write_only__, 1, 3)))
|
||||
__attribute__ ((__access__ (__read_only__, 2)));
|
||||
# 1036 "/usr/include/stdlib.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" 1 3 4
|
||||
# 24 "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" 3 4
|
||||
extern __inline double
|
||||
__attribute__ ((__nothrow__ , __leaf__)) atof (const char *__nptr)
|
||||
{
|
||||
return strtod (__nptr, (char **) ((void *)0));
|
||||
}
|
||||
# 1037 "/usr/include/stdlib.h" 2 3 4
|
||||
# 1048 "/usr/include/stdlib.h" 3 4
|
||||
|
||||
# 3 "src/part1.c" 2
|
||||
# 1 "/usr/include/string.h" 1 3 4
|
||||
# 26 "/usr/include/string.h" 3 4
|
||||
# 1 "/usr/include/x86_64-linux-gnu/bits/libc-header-start.h" 1 3 4
|
||||
# 27 "/usr/include/string.h" 2 3 4
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# 1 "/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h" 1 3 4
|
||||
# 34 "/usr/include/string.h" 2 3 4
|
||||
# 43 "/usr/include/string.h" 3 4
|
||||
extern void *memcpy (void *__restrict __dest, const void *__restrict __src,
|
||||
size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
|
||||
|
||||
extern void *memmove (void *__dest, const void *__src, size_t __n)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
# 61 "/usr/include/string.h" 3 4
|
||||
extern void *memset (void *__s, int __c, size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
|
||||
|
||||
|
||||
extern int memcmp (const void *__s1, const void *__s2, size_t __n)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
# 80 "/usr/include/string.h" 3 4
|
||||
extern int __memcmpeq (const void *__s1, const void *__s2, size_t __n)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
# 107 "/usr/include/string.h" 3 4
|
||||
extern void *memchr (const void *__s, int __c, size_t __n)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
|
||||
# 141 "/usr/include/string.h" 3 4
|
||||
extern char *strcpy (char *__restrict __dest, const char *__restrict __src)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
|
||||
extern char *strncpy (char *__restrict __dest,
|
||||
const char *__restrict __src, size_t __n)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
|
||||
|
||||
extern char *strcat (char *__restrict __dest, const char *__restrict __src)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
|
||||
extern char *strncat (char *__restrict __dest, const char *__restrict __src,
|
||||
size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
|
||||
|
||||
extern int strcmp (const char *__s1, const char *__s2)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
|
||||
extern int strncmp (const char *__s1, const char *__s2, size_t __n)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
|
||||
|
||||
extern int strcoll (const char *__s1, const char *__s2)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
|
||||
extern size_t strxfrm (char *__restrict __dest,
|
||||
const char *__restrict __src, size_t __n)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2))) __attribute__ ((__access__ (__write_only__, 1, 3)));
|
||||
# 246 "/usr/include/string.h" 3 4
|
||||
extern char *strchr (const char *__s, int __c)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
|
||||
# 273 "/usr/include/string.h" 3 4
|
||||
extern char *strrchr (const char *__s, int __c)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
|
||||
# 293 "/usr/include/string.h" 3 4
|
||||
extern size_t strcspn (const char *__s, const char *__reject)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
|
||||
|
||||
extern size_t strspn (const char *__s, const char *__accept)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
# 323 "/usr/include/string.h" 3 4
|
||||
extern char *strpbrk (const char *__s, const char *__accept)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
# 350 "/usr/include/string.h" 3 4
|
||||
extern char *strstr (const char *__haystack, const char *__needle)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2)));
|
||||
|
||||
|
||||
|
||||
|
||||
extern char *strtok (char *__restrict __s, const char *__restrict __delim)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
|
||||
|
||||
|
||||
|
||||
extern char *__strtok_r (char *__restrict __s,
|
||||
const char *__restrict __delim,
|
||||
char **__restrict __save_ptr)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 3)));
|
||||
# 407 "/usr/include/string.h" 3 4
|
||||
extern size_t strlen (const char *__s)
|
||||
__attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1)));
|
||||
# 419 "/usr/include/string.h" 3 4
|
||||
extern char *strerror (int __errnum) __attribute__ ((__nothrow__ , __leaf__));
|
||||
# 539 "/usr/include/string.h" 3 4
|
||||
|
||||
# 4 "src/part1.c" 2
|
||||
|
||||
|
||||
|
||||
# 6 "src/part1.c"
|
||||
typedef struct{
|
||||
int min;
|
||||
int max;
|
||||
char check_char;
|
||||
char password_string[20];
|
||||
}Password;
|
||||
|
||||
const int PASSWORD_VALUES = 4;
|
||||
const int HEADER_LENGTH = 7;
|
||||
|
||||
|
||||
Password * file_import(char * filename, Password* array_pointer){
|
||||
|
||||
FILE * file_pointer;
|
||||
|
||||
int array_index = 0;
|
||||
int min = 0;
|
||||
int max = 0;
|
||||
char character_check = 'z';
|
||||
char intermediate_string[40];
|
||||
int string_len;
|
||||
char * line_get;
|
||||
char string;
|
||||
|
||||
|
||||
file_pointer = fopen(filename, "r");
|
||||
|
||||
|
||||
if (file_pointer ==
|
||||
# 34 "src/part1.c" 3 4
|
||||
((void *)0)
|
||||
# 34 "src/part1.c"
|
||||
) {
|
||||
printf("no such file.");
|
||||
exit(2);
|
||||
} else {
|
||||
printf("File successfully loaded.\n");
|
||||
}
|
||||
|
||||
|
||||
while( !(feof(file_pointer)) ){
|
||||
Password new_password;
|
||||
|
||||
line_get = fgets(intermediate_string, sizeof(intermediate_string), file_pointer);
|
||||
|
||||
string_len = strlen(intermediate_string) - (HEADER_LENGTH + 1);
|
||||
printf("Read line: [%s]",intermediate_string);
|
||||
sscanf(intermediate_string,"%d",&min);
|
||||
sscanf(intermediate_string,"%*d-%d",&max);
|
||||
sscanf(intermediate_string,"%*d-%*d %c",&character_check);
|
||||
strncpy(&string,(line_get+HEADER_LENGTH),(strlen(line_get)-(HEADER_LENGTH+1)));
|
||||
(&string)[string_len]= '\0';
|
||||
|
||||
printf("Recieved values: %d, %d, %c, %s\n",min, max,character_check, &string);
|
||||
new_password.min = min;
|
||||
new_password.max = max;
|
||||
new_password.check_char = character_check;
|
||||
strcpy(new_password.password_string, &string);
|
||||
|
||||
|
||||
array_pointer[array_index] = new_password;
|
||||
array_index = array_index + 1;
|
||||
|
||||
}
|
||||
|
||||
|
||||
fclose(file_pointer);
|
||||
|
||||
return array_pointer;
|
||||
}
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
|
||||
int final_value = 0;
|
||||
|
||||
int array_index = 0;
|
||||
|
||||
Password* array_pointer;
|
||||
|
||||
int array_size = 1000;
|
||||
|
||||
char * filename;
|
||||
|
||||
Password working_password;
|
||||
|
||||
|
||||
|
||||
if(argc >= 2){
|
||||
filename = argv[1];
|
||||
} else {
|
||||
filename = "data/testInput.txt";
|
||||
}
|
||||
|
||||
|
||||
array_pointer = (Password*)calloc(array_size, sizeof(Password));
|
||||
|
||||
|
||||
if (array_pointer ==
|
||||
# 99 "src/part1.c" 3 4
|
||||
((void *)0)
|
||||
# 99 "src/part1.c"
|
||||
){
|
||||
printf("Dynamic array allocation failed.\n");
|
||||
exit(1);
|
||||
} else {
|
||||
printf("Memory successfully allocated using calloc.\n");
|
||||
}
|
||||
|
||||
|
||||
array_pointer = file_import(filename, array_pointer);
|
||||
|
||||
for(array_index = 0; array_index < array_size; ++array_index){
|
||||
working_password = array_pointer[array_index];
|
||||
printf("Value: %d, %d, %c, %s\n", working_password.min, working_password.max, working_password.check_char, working_password.password_string);
|
||||
}
|
||||
|
||||
|
||||
printf("Final value: %d\n",final_value);
|
||||
return(0);
|
||||
}
|
2854
day02/build/part1.s
2854
day02/build/part1.s
File diff suppressed because it is too large
Load diff
Loading…
Add table
Reference in a new issue