ಸಿ (ಕ್ರಮವಿಧಿ ಭಾಷೆ)

ಸಿ (ಇಂಗ್ಲಿಷ್ ಭಾಷೆಯ C ಎನ್ನುವಂತೆ ಉಚ್ಛಾರಣೆ) ಸಾಮಾನ್ಯ ಉದ್ದೇಶದ ಗಣಕ ಕ್ರಮವಿಧಿ ಭಾಷೆ. ಇದನ್ನು  ಡೆನ್ನಿಸ್ ರಿಚಿ ೧೯೬೯ ಮತ್ತು ೧೯೭೩ರ ನಡುವೆ ಬೆಲ್ ಲ್ಯಾಬೊರೆಟರೀಸ್ನಲ್ಲಿ ಯುನಿಕ್ಸ್ ಕಾರ್ಯಕಾರಿ ವ್ಯವಸ್ಥೆಯ ಜೊತೆಗೆ ಬಳಸಲು ಅಭಿವೃದ್ಧಿಪಡಿಸಿದರು.

ಇದರಲ್ಲಿ "ಸಿ"ಯ ಮೂಲಭೂತವಾದ ಜ್ಣ್ಯಾನವನ್ನು ವಿವರಿಸಲಾಗಿದೆ. ಎಲ್ಲದಕ್ಕೂ ಮೊದಲು ನಾವು ಸಿ ಬರೆಯುವ ಮೊದಲು <stdio.h> ಅನ್ನು ಏಕೆ ಬರೆಯುತ್ತೇವೆ ಎಂದು ತಿಳಿದುಕೊಳ್ಳಬೇಕು, ಮೊದಲು ಇದರ ಬಗ್ಗೆ ಚರ್ಚಿಸೋಣ.

	ಮೊದಲೇ ಹೇಳಿದಂತೆ ನಾವು ಸಿ program ಬರೆದ ನಂತರ ಗಣಕ ಯಂತ್ರವು ಅದನ್ನು ತನಗೆ ಅರ್ಥವಾಗುವಂತಹ machine ಭಾಷೆಗೆ ರೂಪಾಂತರಿಸುತ್ತದೆ.ಈ ಒಂದು ಪ್ರಕ್ರಿಯೆಯನ್ನು compile ಎಂದು ಕರೆಯುತ್ತೇವೆ.ಕಂಪೈಲ್ ಪ್ರಕ್ರಿಯೆಯು ಕೆಲವು ಶ್ರೇಣಿಗಳನ್ನು ಹೊಂದಿದೆ. ಈಗ ನಾವು ಮೊದಲನೇ ಶ್ರೇಣಿಯನ್ನು ನೋಡೋಣ.ಇದರ ಜೊತೆಗೆ ಪ್ರತೀ ಪ್ರೊಗ್ರಾಮ್ ಬರೆಯುವುದಕ್ಕೂ ಮೊದಲು #include <stdio.h> ಏಕೆ ಬರೆಯಬೇಕೆಂದು ತಿಳಿದುಕೊಳ್ಳೋಣ.

	ನಮಗೆ ತಿಳಿದಿರುವ ಹಾಗೆ printf ಒಂದು function ಎಂದು ಕರೆಯುತ್ತೇವೆ. ಈ function ಕೂಡ function stdio.h ಎಂಬ ಒಂದು file ನಲ್ಲಿ ವಿವರಿಸಿರುತ್ತದೆ.ನಾವು ಕಂಪೈಲ್ ಮಾಡುವ ಸಂದರ್ಭದಲ್ಲಿ ಕಂಪೈಲೆರ್ #include <stdio.h> ಅನ್ನು ಕಡಿತಗೊಳಿಸಿ ಅದರ ಸ್ಥಳದಲ್ಲಿ stdio.h file ನಲ್ಲಿನ ಅಂಶಗಳನ್ನು ಸ್ಥಳಾಂತರಿಸುತ್ತದೆ.ಈ ಕ್ರಿಯೆಯನ್ನು pre-processing ಎಂದು ಕರೆಯುತ್ತಾರೆ.ಹೀಗೆ ಮಾಡುವುದರಿಂದ program ಗೆ printf function ಹೇಗೆ ಬಂತೆಂದು ತಿಳಿಯುತ್ತದೆ.  #include <stdio.h> ಹೀಗೆ ಬರೆಯದಿದ್ದಲ್ಲಿ printf function ಸಿಗುತ್ತಿಲ್ಲ ಅನ್ನುವ error ಸಂದೇಶವನ್ನು ನೀಡುತ್ತದೆ.

	stdio ಇದರ ಅರ್ಥStandard Input and Output. ಈ ಫೈಲ್ ನಲ್ಲಿ ಎಲ್ಲಾ ತರಹದ functionಗಳನ್ನು ವಿವರಿಸಿರಲಾಗಿರುತ್ತದೆ.ನಂತರ input/output ತೆಗೆದುಕೊಳ್ಳುವ ಕಾರ್ಯ ನಡೆಯುತ್ತದೆ.ಆಮೇಲೆ print ಆಗುವ ಕೆಲಸ ನಡೆಯುತ್ತದೆ.ತಕ್ಷಣ scanf input ಸ್ವೀಕರಿಸುತ್ತದೆ.ಈ ಎರಡು function ಗಳನ್ನು stdio.h ಫೈಲ್ ನಲ್ಲಿ ವಿವರಿಸಿರಲಾಗುತ್ತದೆ.

Pre-processing 
	ಯಾವುದೇ ಒಂದು program ಬರೆಯುವಾಗ ಯಾವ ಸಾಲು # ನಿಂದ ಪ್ರಾರಂಭವಾಗುತ್ತದೆಯೋ ಅದನ್ನು pre-processor ಎಂದು ಕರೆಯುತ್ತಾರೆ.compiler ಗಿಂತ ಮೊದಲು process ಮಾಡಿ program ಅನ್ನು ಮೊದಲು ಹೇಳಿದಂತೆ ಸುಧಾರಿಸುತ್ತದೆ. #include ಒಂದು pre-processing directive ಇದರ ಮುಂದೆ ಏನು ಬರೆದಿರುತ್ತದೊ ಆ file ನ ಅಂಶವನ್ನು ಬರೆಯುತ್ತದೆ.

define ABC1
	#define ಅನ್ನು ಯಾವುದೇ ಒಂದು constant ಅನ್ನು ವಿವರಿಸಲು ಉಪಯೋಗಿಸುತ್ತಾರೆ.#define ABC 1 ಬರೆದ ಮೇಲೆ ಎಲ್ಲೆಲ್ಲಿ program ನಲ್ಲಿ ABC ಇದೆಯೋ ಅಲ್ಲಿ 1 ಅನ್ನು compiler ಲಿಖಿಸುತ್ತದೆ.#define ಅನ್ನು macro ಅಂತಲೂ ಕರೆಯುತ್ತಾರೆ.

define ABC4(a) (a+4)
	ಈ macro parameterನ್ನು ಸ್ವೀಕರಿಸುತ್ತದೆ.ಇದನ್ನು ಉಪಯೋಗಿಸಿದ ನಂತರ program compileನ ಮೊದಲ ಹಂತದಲ್ಲಿ ಎಲ್ಲಿ ADD4(x) ಇದೆಯೋ ಅಲ್ಲಿ (x+4) ಅನ್ನು ಸ್ಥಳಾಂತರಿಸುತ್ತದೆ.ಇಲ್ಲಿ ತೋರಿಸಿರುವ x ಯಾವುದೇ ಬೇರೆ ಆಂಗ್ಲ ಅಕ್ಷರವಾದರೂ ಸರಿ.ಒಂದು ವೇಳೆ ನಾವು 5 ಎಂದು ಬರೆದರೆ ಆ ಸ್ಥಳದಲ್ಲಿ (4+5) ಎಂದಾಗುತ್ತದೆ.

endif
	ಒಂದು ವೇಳೆ ನಾವು #define ಉಪಯೋಗಿಸಿ xyz define ಮಾಡಿದರೆ , #ifdef ಮತ್ತು #endif ಮಧ್ಯ ಬರೆದ program compile ಆಗುತ್ತದೆ ಇಲ್ಲದಿದ್ದಲ್ಲಿ ಅದು ಹಿಂತಿರುಗುತ್ತದೆ.

ವರ್ಗ: ಗಣಕ ವಿಜ್ಞಾನ
ವರ್ಗ: ಕ್ರಮವಿಧಿ ಭಾಷೆ