سی .

سی اسٹینڈرڈ لائبریری کا ایک مجموعہ ہے، اس میں درج کیے گئے کام، مکرر، اور ٹائپ کی وضاحتیں آئی ایس او سی پروگرامنگ زبان کے معیار کے طور پر فراہم کی گئی ہیں۔یہ ترقی یافتہ اداروں کو ایک پورٹل، اچھی طرح سے ترقی دیتا ہے جیسے کہ ان پٹ / آؤٹ، کمپیوٹرنگ، یادداشت، ریاضیاتی تشخیص اور تاریخ۔ معیاری لائبریری پر انحصار کرنے سے آپ کو دستوری حل کی بجائے، کوڈ کو بہتر اور اپنے مختلف پروگراموں کو بہتر بنانے کے لیے مختلف پر یقینی بناتا ہے۔

لائبریری کو کئی سرینگر فائلوں میں منظم کیا جاتا ہے، ہر گروپ سے متعلقہ سرگرمیاں۔ سمجھ لینا کہ ہر سر کی پیشکش میں کیا کچھ پیش آتا ہے وہ مؤثر اور قابلِ عمل کام کو تحریر کرنے کا پہلا قدم ہے۔ ہم نیچے سب سے اہم ہیڈ کوارٹرز اور ان کے بنیادی کام کا جائزہ لیتے ہیں، اس کے ساتھ ساتھ ساتھ وہ روزمرہ پروگرامنگ کو آسان انداز میں پیش کرتے ہیں۔

بنیادی عوامل اور ان کی کارکردگی

< استیو.h> – ان پٹ اور مایہ ناز –

ہیڈر معیاری نہروں (اسٹڈ، اسٹیڈر، اسٹری) اور فائلوں تک پڑھنے اور لکھنے کے کام انجام دیتا ہے. اس کے بغیر کم سطح کے نظام کو عمل میں لانے یا اپنی خودی کی بفرنگ کی پٹی لکھنے کی ضرورت ہوتی ہے. کلیدی سرگرمیاں شامل ہیں:

  • / – [FLT] – industed utive and inut.
  • / ]] – اوپن اور قریبی فائلیں۔
  • / ] پڑھانا/ فائل سے لکھنے والا لکھنا۔
  • [1]] / ] – بنوری فائل آئی/ او -
  • ] / ] – اخذ شدہ بتاریخ ئی بتاریخ I/O.

Ex empal: [1] صارف سے ایک لائن پڑھیے بغیر بفر پُرکی کے

#include <stdio.h>

int main() {
 char buffer[100];
 printf("Enter a line: ");
 if (fgets(buffer, sizeof(buffer), stdin)) {
 printf("You entered: %s", buffer);
 }
 return 0;
}

&l؛ اسکاٹب۔h> جنرل Utilities –

میں فعال یادداشت کے لیے کام کرنا، غیر متوقع تعداد میں اضافہ، عمل آوری اور تبدیلی کے لیے ضروری ہے یہ پروگرامز کے لیے ضروری ہیں جو رن اپ ٹائمز میں یادداشت کو تقسیم کرنے یا سسٹم سطح کے عمل کو انجام دینے کے لیے ضروری ہیں۔

  • ، ، ، ، ، ، ]]،[ فضلی نام :[ حوالہ جات:[حوالہ درکار]]]]]]]]]][ حوالہ جات میں استعمال کیا جاتا ہے۔
  • ، ، ]، ، – Strating-to numbers.s.s. اخذ شدہ بتاریخ 28 دسمبر 2018. تحقق من التاريخ في:
  • [FLT:GBC]، ، ] – Pseudo-random تعداد نسلیں -
  • ، ، ] – Constrol کنٹرول کیا گیا ہے.
  • ] – تیز رفتار عمل برائے متعین۔
  • – بینری تلاش محیطوں پر مشتمل ہے۔

Exemply: [1] کے ساتھ ساتھ ایک درجنوں انگروں کو ترتیب دینا اپنے معمول کی تحریر سے کہیں زیادہ آسان ہے:

#include <stdio.h>
#include <stdlib.h>

int compare(const void *a, const void *b) {
 return (*(int*)a - *(int*)b);
}

int main() {
 int arr[] = {42, 3, 71, 1, 9};
 size_t n = sizeof(arr) / sizeof(arr[0]);
 qsort(arr, n, sizeof(int), compare);
 for (size_t i = 0; i < n; i++)
 printf("%d ", arr[i]);
 printf("\n");
 return 0;
}

&l؛ اخذ کردہ بتاریخ۔h> – Straing and Memorial Operation –

کام کر کے CVC (null-termined rates of raphs) سے مراد غلطی ہے معیاری لائبریری کے بغیر. کاپی، کنسٹنگ، موازنہ اور تلاش کرنے کے لیے محفوظ اور مؤثر کام فراہم کرتا ہے، اس کے علاوہ میموریل بلاک آپریشنز بھی شامل ہیں۔

  • ، ، [حوالہ درکار]] – نقل و حمل –
  • ، ، ] – Concatenate serves. اخذ شدہ بتاریخ: 9 جنوری 2017. ^ ا ب پ ت ٹ ث ج چ ح خ د ڈ ذ https://www.com/brography.com/fou.com/fo/fo.com/f-fography/f-T/fography/Cography/T/f-T/fo-T/fobjab-T/f-T/f-T/f-T/T/T/T/T/T/ [TTT/T/T/T/T/T/T/T / ⁇ /T/T/T/T T / li/ [/T/T : [T/T :
  • ، ، ] – موازنہ کریں.
  • ] – Gate star طولی۔
  • ، ، ] – تلاش زیریں یا حروف تہجی کی تلاش۔
  • ، ، ، ، – میموریل بلاکس (انگریزی:
  • – ایک تار (جس کی دیکھ بھال کے ساتھ)۔

Ex empal: [1] محفوظ کنیکٹیکٹ استعمال میں دو کوکالنگ :

#include <stdio.h>
#include <string.h>

int main() {
 char dest[20] = "Hello, ";
 const char *src = "World!";
 strncat(dest, src, sizeof(dest) - strlen(dest) - 1);
 printf("%s\n", dest);
 return 0;
}

&l؛math.h> – Edmical Factings –

سائنسی اور انجینئری اطلاقات کے لیے ، ، ، ، ، ، ۔ یہ ہارڈ ویئر-پڈ-پرٹزم اور بہت زیادہ درست کام کرتی ہیں۔

  • – مربع جڑے ہوئے.
  • ، ، ، ، ] – Trgigonistrenter]]۔
  • ، ، ] – Eponential and natural Lagarithm. ^ ا ب پ ت ٹ ث ج چ ح خ د ڈ ذ ت ٹ ث ج چ ح خ د ڈ ذ ت ٹ ٹ ٹ ٹ ٹ ٹ ٹ پڑ پڑ ھی ۔
  • -Ence value for airing-pint نمبروں کے لیے.
  • – فاصلے قریب ترین انٹر کے پاس۔

[Ex empal:] دو نقطوں کے درمیان فاصلہ کو ترتیب دیتے ہوئے

#include <stdio.h>
#include <math.h>

int main() {
 double x1 = 1.0, y1 = 2.0, x2 = 4.0, y2 = 6.0;
 double dx = x2 - x1, dy = y2 - y1;
 double distance = sqrt(dx*dx + dy*dy);
 printf("Distance: %.2f\n", distance);
 return 0;
}

&l؛ctype.h> حرف دستلنگ –

کلاس بندی اور تبدیل کر کے حروف: ، ، ، ، ، وہ اصولوں کو پورا کرتے ہیں اور دستی تشبیہات سے محفوظ ہیں۔

[Ex empal: [1] اوپری پٹی کے لیے ایک تار کا کاننا:

#include <stdio.h>
#include <ctype.h>

int main() {
 char str[] = "Hello, World!";
 for (int i = 0; str[i]; i++)
 str[i] = toupper(str[i]);
 printf("%s\n", str);
 return 0;
}

&l؛ وقت۔h> Date –

[ فٹ‌نوٹ :67 ] آجکل وقت ، وقت کا تعیّن اور شکل‌وصورت کی تاریخ کو پورا کرنے کے لئے کام فراہم کرتا ہے ۔

  • ] – موجودہ کیلنڈر وقت کا آغاز۔
  • ] – پروگرام کے ذریعے استعمال ہونے والا وقت۔
  • ] – دو بار اقدار کے درمیان فرق۔
  • بطور تارڑ وقت۔
  • [حوالہ درکار] / – Convert Time t to struct-struc tm. اخذ شدہ بتاریخ: 9 جنوری 2017 ^ ا ب پ ت ٹ ث ج چ ح خ د ڈ ذ د ڈ ذ د ڈ ذ ذ ذ ذ لد ِد ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ ِ

[Ex empal:] موجودہ تاریخ اور وقت پرنٹ:

#include <stdio.h>
#include <time.h>

int main() {
 time_t t = time(NULL);
 struct tm *tm_info = localtime(&t);
 char buffer[26];
 strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", tm_info);
 printf("Current time: %s\n", buffer);
 return 0;
}

معیاری لائبریری کی طاقت کو ظاہر کرنے والی عملی مثالیں

فائل محفوظ طریقے سے پڑھے

عبارت فائل کو لائن سے پڑھنا عام مطالبہ ہے استعمال کرنا buffer settlection, / ختم ہونے والی اور غلطی کی شرائط کو ختم کرنے سے روکتا ہے۔

#include <stdio.h>
#include <stdlib.h>

int main() {
 FILE *fp = fopen("data.txt", "r");
 if (!fp) {
 perror("fopen");
 return EXIT_FAILURE;
 }
 char line[256];
 while (fgets(line, sizeof(line), fp)) {
 printf("%s", line);
 }
 if (ferror(fp))
 perror("fgets");
 fclose(fp);
 return 0;
}

اِس کے علاوہ ، اُس نے اپنے شاگردوں کو بھی یہ دعوت دی : ” اَے میرے بیٹے !

[ فٹ‌نوٹ : ۸ ]

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main() {
 char *words[] = {"apple", "banana", "cherry", "date"};
 size_t num_words = sizeof(words) / sizeof(words[0]);
 // Allocate array of char pointers
 char **copy = malloc(num_words * sizeof(char*));
 if (!copy) return EXIT_FAILURE;
 for (size_t i = 0; i < num_words; i++) {
 copy[i] = malloc(strlen(words[i]) + 1);
 if (copy[i])
 strcpy(copy[i], words[i]);
 }
 // Print and free
 for (size_t i = 0; i < num_words; i++) {
 printf("%s\n", copy[i]);
 free(copy[i]);
 }
 free(copy);
 return 0;
}

سی اسٹینڈرڈ لائبریری کو استعمال کرنے کے فوائد

  • Portinity: معیاری لائبریری کے خلاف لکھی گئی کوڈ کو کسی بھی ضمنی پلیٹ فارم (وینڈیوز، لینکس، میکوایس، ایمپلی سسٹم) پر چلایا جاتا ہے۔
  • کرویئشا: لائبریری کے کام ناقابلِ‌ فہم طور پر جانچے جاتے ہیں اور ہاتھ سے خالی اور ٹھنڈا کرنے والے شعبوں (جیسے کہ باطل نقطہ‌نظر ، خالی یا پُرکشش ) بہت سے ہاتھ سے چلنے والے عمل سے بہتر ہوتے ہیں ۔
  • معیاری لائبریری عملہ کو اکثر نشانہ ہارڈ ویئر کے لیے استعمال کیا جاتا ہے، جیسے کہ کلین، اپ میزوں اور ہارڈ ویئر ہدایات استعمال کرتے ہیں۔
  • ریڈارمنٹ: استعمال کرنے کی بجائے دستوری بلبلے کی بجائے فوری طور پر دوسرے ترقی یافتہ اداروں میں مقصد کو متعارف کرانے کا اعلان کرتا ہے۔
  • [LLT:1] معیاری کے ساتھ لیبارٹریس کی تشکیل. اپ ڈیٹڈ کرنے والا یا پلیٹ فارم کو اپنے کوڈ کو چھونے بغیر لائبریری آپریشن میں خودبخود بہتری لا سکتا ہے۔

بہترین مشقیں اور عام پُراسرار خطرات

ہمیشہ واپسی کی اہمیت کا جائزہ لیں

، ، اور ناکام ہو سکتے ہیں. میں ان کی واپسی اقدار کو تباہ یا غیر معمولی طور پر تباہ کرنے کا باعث بنا دیتا ہوں. مثال کے طور پر:

FILE *fp = fopen("nonexistent.txt", "r");
if (!fp) {
 perror("fopen");
 return EXIT_FAILURE;
}

غیرضروری کارکردگی

اور خطرناک ہیں کیونکہ وہ بفر سائز نہیں چیک کرنے کی وجہ سے. ، ، یا ]، [FFLT:95]، (جہاں بھی دستیاب ہے) مثال:

char buf[10];
snprintf(buf, sizeof(buf), "%s", "Hello, World!"); // safely truncated

آزادانہ طور پر جملہ متحرک میموری

یا کو ایک ملتی جلتی ] ہونا ضروری ہے. ولگریڈ یا Addresser جیسے آلات استعمال کریں تاکہ یادداشت کی ساخت کو معلوم کیا جا سکے۔

ذہنی توازن سے باخبر رہیں

کچھ معیاری لائبریری کام (مثلاً ، ]، اندرونی طور پر استعمال میں لاتے ہیں اور سوراخ نہیں ہوتے. متعدد پروگراموں میں، یا جیسے ری ایکٹر کے ورژن کو ترجیح دیتے ہیں۔

مزید وسائل

سی اسٹینڈرڈ لائبریری کی اپنی سمجھ بڑھانے کے لیے انتہائی اہم حوالوں سے انتساخات کا جائزہ لیں:

کُنَّا

سی اسٹینڈرڈ لائبریری ہر سی پروگرامر کے لیے ایک ضروری ذریعہ ہے، اپنے ہیڈ اور کام کرنے والے کو ماسٹر کرنے سے آپ مختصر، محفوظ اور زیادہ سے زیادہ پاسپورٹ کوڈ لکھ سکتے ہیں۔اس منطق کو دوبارہ حاصل کرنے کی بجائے آپ کو C میں خاصا اضافہ کرنے پر توجہ دی جا سکتی ہے۔