file input

This commit is contained in:
2026-06-14 04:03:22 +02:00
parent a214e58f2c
commit 6e1a33db8a
4 changed files with 10 additions and 69 deletions
-63
View File
@@ -1,63 +0,0 @@
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct stringchicken{
char **data;
size_t length;
size_t capacity;
};
struct stringchicken *create_string_chicken(){
struct stringchicken *mystruct = malloc(sizeof(struct stringchicken));
mystruct->length = 0;
mystruct->capacity = 2;
mystruct->data = malloc(sizeof(char*) * mystruct->capacity);
return mystruct;
}
void push_SC(char *string_input, struct stringchicken *struct_input){
if (struct_input->length == struct_input->capacity) {
struct_input->capacity*=2;
char **tempptr = realloc(struct_input->data, sizeof(char*) * struct_input->capacity);
if (tempptr == NULL) {
exit(1);
}
struct_input->data = tempptr;
}
char *newstring = malloc(strnlen(string_input, sizeof(char)*100));
strcpy(newstring,string_input);
struct_input->data[struct_input->length] = newstring;
struct_input->length++;
}
void printchicken(struct stringchicken *input_struct){
for (size_t i = 0; i < input_struct->length; i++) {
printf("line:%zu equals %s", i, input_struct->data[i]);
}
}
int main() {
char myString[100];
char ch;
FILE *fptr = fopen("./kvtest.txt", "r");
struct stringchicken *mystringarray = create_string_chicken();
while (fgets(myString, 100, fptr)) {
push_SC(myString, mystringarray);
}
printchicken(mystringarray);
int mylength = strnlen(myString, 100);
fclose(fptr);
}
+9 -3
View File
@@ -1,12 +1,18 @@
#include "stringchicken.h" #include "stringchicken.h"
#include <stdio.h> #include <stdio.h>
#include <stdlib.h>
#include <string.h> #include <string.h>
int main() { int main(int argc, char* argv[]) {
char myString[100]; char myString[100];
char ch; char ch;
FILE *fptr = fopen("./kvtest.txt", "r"); FILE *fptr = fopen(argv[1], "r");
if (fptr == NULL) {
printf("file doesn't exist");
exit(1);
}
struct stringchicken *mystringarray = create_string_chicken(); struct stringchicken *mystringarray = create_string_chicken();
@@ -14,7 +20,7 @@ int main() {
push_SC(myString, mystringarray); push_SC(myString, mystringarray);
} }
printchicken(mystringarray); print_SC(mystringarray);
int mylength = strnlen(myString, 100); int mylength = strnlen(myString, 100);
fclose(fptr); fclose(fptr);
+1 -1
View File
@@ -11,7 +11,7 @@ struct stringchicken{
struct stringchicken *create_string_chicken(void); struct stringchicken *create_string_chicken(void);
void push_SC(char *string_input, struct stringchicken *struct_input); void push_SC(char *string_input, struct stringchicken *struct_input);
void printchicken(struct stringchicken *input_struct); void print_SC(struct stringchicken *input_struct);
#endif // STRINGCHICKEN_H #endif // STRINGCHICKEN_H
-2
View File
@@ -1,2 +0,0 @@
dit is een test
test2