About GBdirect Consultancy Training Development

Section navigation

Leeds Office (National HQ)

GBdirect Ltd
Leeds Innovation Centre
103 Clarendon Road
LEEDS
LS2 9DF
West Yorkshire
United Kingdom

consulting@gbdirect.co.uk

tel: +44 (0)870 200 7273
Sales: 0800 651 0338

South East Regional Office

GBdirect Ltd
18 Lynn Rd
ELY
CB6 1DA
Cambridgeshire
United Kingdom

consulting@gbdirect.co.uk

tel: +44 (0)870 200 7273
Sales: 0800 651 0338

Please note: Initial enquiries should always be directed to our UK national office in Leeds (West Yorkshire), even if the enquiry concerns services delivered in London or South/East England. Clients in London and the South East will typically be handled by staff working in the London or Cambridge areas.

6.8. Summary

You now understand structures and unions. Bitfields and enumeration types really are not very important and you could manage quite well without them.

It is hard to emphasize how important is the use of structures, pointers and malloc in serious programs. If you aren't familiar with the use of structured data in the form of lists, trees and so on, get a good book now. Better still, try to enrol on a good course. Except in very specialized applications, it is usually the ability to structure data well, not the ability to write complicated algorithms, that makes it possible to construct clean, small and maintainable programs. Experienced software designers often say that once the right structure of the data has been determined, the rest is ‘simple’.

Undoubtedly, one of the reasons for the popularity of C among experienced software specialists is the freedom that it gives in the structuring of data, without sacrificing speed.

Initialization should not be overlooked. Although simple in concept, it is surprising how inconvenient many other languages make this. The ludicrous extreme is to insist on the use of assignment statements; C has a practical and convenient approach. If the concept of ‘fully bracketed initializers’ seems a bit unpleasant, don't worry. It is rare that you have to do it in practice; all that you need is to know how to do simple initialization and to know a book that describes the more complex initialization. To get the full low-down read the Standard, which is uncharacteristically penetrable when it discusses the matter; verging at times on lucidity.