NULL և void ցուցիչներ

Null Pointer, Void* Pointer

C-ում NULL և void ցուցիչը ծառայում են տարբեր նպատակների. NULL-ը C-ում նախապես սահմանված մակրո է, որը ներկայացնում է զրոյական ցուցիչ: Դուք կարող եք այն վերագրել ցանկացած ցուցիչի՝ ցույց տալու համար, որ այն չի հղում որևէ բանի: NULL ցուցիչը ցուցիչ է, որը չի հղում որևէ վավեր հիշողության վրա: Այն հաճախ օգտագործվում է ցույց տալու համար, որ ցուցիչը ներկայումս չի հղում որևէ օբյեկտի կամ հիշողության հասցեի: Այն սովորաբար օգտագործվում է ցուցիչները սկզբնավորելու, անվավեր ցուցիչների առկայությունը ստուգելու կամ կապակցված տվյալների կառուցվածքների ավարտը նշելու համար, ինչպիսիք են կապված ցուցակները կամ ծառերը:
void ցուցիչը, որը հաճախ կոչվում է «ընդհանուր ցուցիչ», որն իր հետ կապված կոնկրետ տվյալների տեսակ չունի: Այն կարող է օգտագործվել ցանկացած տվյալների տիպի օբյեկտի հասցեն պահելու համար: Քանի որ void ցուցիչները չունեն տվյալների տեսակ, դուք չեք կարող ուղղակիորեն դիմել: Դուք պետք է դրանք փոփոխեք (cast) համապատասխան տվյալների տիպին: void ցուցիչները հատկապես օգտակար են այն սցենարների դեպքում, երբ դուք պետք է աշխատեք տարբեր տեսակի տվյալների հետ՝ օգտագործելով մեկ ցուցիչ, օրինակ՝ ընդհանուր տվյալների մշակման ֆունկցիաներում: