نوشتن تابع با ورودی نامعلوم

@Mehrad#1758
اها … ممنون از شما
مهندس میگم این فرمت ها چجورن ؟؟
یعنی این که من مثلا می خوام تابع بنویسم مثل printf و فرمت %d رو از کاربر بگیرم.
این فرمت یک نماد واس خودشون مشخص کردن یا دستوری از زبون C هستش ؟؟؟

این فرمت کاملا توافقی هست. داخل کد یک if داره که اگه مثلا %d رو پیدا کرد، منتظر یک متغیر int باشه مثلا. اون کسی که برای بار اول این توابع رو نوشته، از این نماد ها استفاده کرده و از اون به بعد همه توابع که format string میگیرن، از همین فرمت استفاده می کنن. شما می تونید هرچیزی که دوست دارید رو استفاده کنید.

@Mehrad#1790
اها هدس زدم
تشکر مهندس جان

سلام مهندس خدا قوت
مهندس جان میگم چجور میشه تابع نوشت که ورودی نامعلوم داشته باشه ؟؟
مثل تابع printf یا scanf که ورودی اولشون ثابته ولی ورودی های بعدیشون متغیر هستش!!

سلام، به این تکنیک در زبان c میگن varargs و جز مباحث پیشرفته در زبان ‌c به حساب میره. با سرچ کردن همین عبارت میتونید آموزش لازمش رو پیدا کنید. ولی به طور کلی به این صورت هست که شما همیشه باید یک یا چند تا از ورودی های تابعتون معلوم باشن و از اونجا به بعد رو می تونید نامعلوم کنید. توی قسمت های معلوم حتما باید با یک روشی به تابع بگید که چند تا دیگه متغیر براش میاد و نوعشون چی هست. مثلا در همین مثال printf شما با وارد کردن %d و … در ورودی اول، به تابع میگید که ورودی های بعدی چندتا هستن و چه نوعی دارن.