AnyCompiler

Strings

Is site ke har doosre course ke ulat, C mein bilkul koi String type nahi hai. Ek C string ek char array hai jo ek null byte ('\0') par terminate hota hai, aur <string.h> ke strlen, strcat, aur strcpy jaise functions sab aage scan karke kaam karte hain jab tak unhe wo terminator nahi milta.

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

int main() {
    char greeting[20] = "Hello";
    strcat(greeting, ", world!");
    printf("%s\n", greeting);
    printf("Length: %zu\n", strlen(greeting));
    return 0;
}
Output
Hello, world!
Length: 13

strcat ne greeting mein in place append kiya — ye assume karta hai ki destination buffer (yahan char[20] declare kiya gaya) mein existing content aur addition dono ke liye, plus null terminator, enough jagah bachi hai. C ye kabhi aapke liye check nahi karta; buffer ke end ke aage likhna C bugs ki sabse common category hai, aur isiliye undefined behavior wali pehli warning yahan especially matter karti hai.

Aage: structs — related fields ko saath group karna, C ka user-defined data types ke liye ekmatra mechanism.

Practice exercise

Ek char s[] = "rust lang" diya gaya hai, <string.h> ke strlen se uski length print karo.