PDA

View Full Version : سوال: کار با فایل ها در ++c



ali_hbz
شنبه 17 خرداد 1393, 17:20 عصر
سلام.یه سوال C++‎‎‎‎ داشتم.
میخوام اطلاعات یک فایل txt رو بخونم و از اطلاعاتش تو یه محاسباتی استفاده کنم .
با استفاده از کتابخانه stdio.h و دستورات این کتابخانه اطلاعات رو میریزم تو یک رشته ، سوال اینجاست
که حالا چطور باید اون قسمتی رو که لازم دارم رو از رشته جدا کنم بطور مثال تو فایل txt داریم txt98 ،
چطوری میشه این عدد (98) رو از داخل رشته جدا و تو یک متغیر دیگه ذخیره کرد؟

اگه میشه همچین کاری رو با یه متغیر دیگه بجز رشته انجام داد لطفا راهنمایی کنید.

rahnema1
شنبه 17 خرداد 1393, 17:55 عصر
#include <stdio.h>
int main()
{
char reshte[]= "txt98";
int adad;
sscanf(reshte,"%*[^0-9]%d",&adad);
printf("%d",adad);
}

Azar.099
شنبه 17 خرداد 1393, 22:29 عصر
*[^0-9]


سلام
این چیکار میکنه ؟

rahnema1
شنبه 17 خرداد 1393, 22:53 عصر
سلام
تابع sscanf توی استاندارد ANSI توضیح داده شده:
http://flash-gordon.me.uk/ansi.c.txt
دوتا % داریم یعنی اون رشته را دو قسمت در نظر می گیریم. بخش اول که حروف هست را با [^0-9] نشون میدیم یعنی هرچیزی که غیر از اعداد صفر تا نه باشه ( حروف) .
دومین % هم مربوط به عدد مورد نظره که با d نشنون میدیم اون ستاره هم میگه اولی لازم نیست در متغیری ذخیره بشه
یعنی الگوی اول پیدا میشه ولی در متغیری ذخیره نمیشه ولی الگوی دوم که همون عدد باشه پیدا شده و در adad ذخیره میشه