Yes, if a C function is designed to work with a variety of sizes for its array parameters, it will have to do the index computation itself. You can write macros to make this easier, but it's still a crock.