Question:
Can I have variable length fields in a structure. I have tried something like:
typedef struct { int length; char data[length];};
but that won’t compile. Is there a way, or do I just have to use some pointers?
Answer:
You can declare a structure like this:
typedef struct { int length; char data[1];} DATA;
Then when you allocate memory for the structure, you can adjust its size like this:
pStruct = (DATA*)malloc(sizeof(DATA) + nLength);Even though you declared the data member as being only one character, C will allow you to access the bytes that follow.
Charlie has over a decade of experience in website administration and technology management. As the site admin, he oversees all technical aspects of running a high-traffic online platform, ensuring optimal performance, security, and user experience.
Related Posts
- Should You Hire a Property Manager? Understanding the Pros and Cons
- Is Your Fundraising Campaign Stalling? Here’s the Game-Changing Advice You Need
- Xen Security Issue Prompts Cloud Computing Reboots
- Getting Information About the Structure of Tables in SQL
- Walmart Releases OneOps Open Source Cloud Development and ALM Platform





















