سلام این برنامه با استفاده از تابع strlen طول p را برمی گرداند.
اما چرا در خروجی عدد 13 را چاپ می کند؟
#include"iostream.h"
#include"conio.h"
#include"string.h"
int main(){
char p[3];
cout<<strlen(p)<<"\n";
return 0;
}
سلام این برنامه با استفاده از تابع strlen طول p را برمی گرداند.
اما چرا در خروجی عدد 13 را چاپ می کند؟
#include"iostream.h"
#include"conio.h"
#include"string.h"
int main(){
char p[3];
cout<<strlen(p)<<"\n";
return 0;
}
سلام
فکر کنم این تابع برای رشته هاست ، و فکر کنم اینطوری کار میکنه که تا زمانی که با NULL یا '0\' نرسیده باشه میاد کاراکتر ها رو میشماره ، تو کامپیوتر من جواب 1 بود و تو کامپیوتر تو 13.
من اومدم این کارو کردمchar p[3]={'\0'};تو هم بعد از اینکه هر کاری کردی آخرین کاراکتر رو NULL کن تا جواب درست در بیاد
موفق باشی
جوابی که من از این کد گرفتم عدد ۳ بود. البته با g++
احتمالا کامپایلر منسوخ TC++ رفتار نا متعارفی یا قدیمی در این مورد عرضه میکند.