No warnings or anything like that when I run the program and it asks for what type of structure I type in unwanted but then it says to press any key to continue so I do and it exits the program
When you write structure == "I-beam" you compare two pointers, not two strings. It works as any other pointer comparison - it just compares two addresses, which is not your intention.
To compare two c-style strings (char*) you should use the strcmp function: if (strcmp(structure, "I-beam") == 0).... If you don't care about the upper/lowercase - use stricmp instead.
The other approach is to use std::string instead of char*. It has an overloaded operator==, so
1 2 3
std::string structure;
// ...
if (structure == "I-beam")
would do what you expect - compare two strings.
The choice is yours (I would rewrite it with std::string).
now im getting this error
error: cannot convert `bool' to `const char*' for argument `1' to `int strcmp(const char*, const char*) for arguement '1' to int strcmp(constant char...
Looks like you use the function incorrectly: if (strcmp(structure == "I-beam")) instead of if (strcmp(structure, "I-beam") == 0). Am I right? If not - then post the code so I could see what's wrong.