Was ist "passender" beim Schreiben eines Linux-Kernel-Moduls: Mit static const
eine Konstante zu definieren, oder #define
?Linux Kernel: Statisch Const vs #Definieren
Ich habe ein Kernel-Modul in Bezug auf ein Stück Hardware, und ich habe eine typische Konstante, die die Anzahl der Puffer ist. Anstatt "3" überall fest zu programmieren, möchte ich eine Konstante verwenden. C-Stil empfiehlt normalerweise, static const
zu nehmen, aber ich bemerke, dass der Kernel voll von #define
ist überall an der Stelle ist. Gibt es einen Grund?
http://stackoverflow.com/questions/1674032/static-const-vs-define-in-c –
Ja, ich habe das gelesen .. Ich frage mich nur, ob es andere Auswirkungen gibt, wenn Sie in der arbeiten Kernel-Space, der die Antworten leicht ändert. – Yeraze
Befolgen Sie die Regeln des Projekts, an dem Sie gerade arbeiten. Da Linux #define für Hardware-Masken/-Register/-Werte bereits verwendet, verwenden Sie die gleiche Konvention. – nos