PDA

View Full Version : سوال: جدا کردن متغییر ها از متن



fh_joker
دوشنبه 26 بهمن 1394, 16:48 عصر
سلام
فرض کنید یه فایل txt داریم که به زبان c یا ++c داخلش برنامه نویسی شده
حالا ما می خواییم متغیرهای نوع int , char , float , double رو جدا کنیم و اگر مثلا داشتیم 15= int مقدار 15 هم ذخیره بشه.
ذخیره سازی توی دیتابیس هست.
برنامه ای که خودم نوشتم که البته ناقصه این طوریه:

$handle = fopen("txt/1.txt", "r");
if ($handle) {
while (($string = fgets($handle, 4096)) !== false) {
$string=trim($string);
$array = explode(" ", $string);
for($i=0;$i<count($array);$i++){
switch($array[$i]){
case 'int' :
$str=$array[$i + 1];
if((strpos($str,';')!== false) || (strpos($str,',')!== false)){
$len=strlen($str);
for($j=0;$j<$len;$j++){
echo $str[$j].'<br>'; // اینجا یکی یکی چاپ میشه مثلا x بعدش 1 من میخوام بشه x1
}
}
else break;
break;
case 'char' :break;
case 'float' : break;
case 'double' : break;
}
}

}
if (!feof($handle)) {
echo "Error: unexpected fgets() fail\n";
}
fclose($handle);
}


فایل متنی

#include <iostream>
#define SUMA(X) (X)+(X)+(X)
#define SUMAA(Y) (Y)+(Y)+(Y)
using namespace std;
int main(void) {
int X1,Z=15;
char Y;
cout<<SUMA(X++)<<endl;
cout<<SUMAA(++Y)<<endl;
return 0;
}
الان باید متغییرهای x1 , z , رو از نوع int و y رو از نوع char قبول کنه ولی نشد.
دوستان راه حلی ندارن؟؟؟

mostafa272
سه شنبه 27 بهمن 1394, 05:27 صبح
به نظرم بهتره اول چک کنید که آرایه $array داره درست مقدار میگیره یا نه و بعد هم مابقی شرطهای داخلیش رو مرحله به مرحله کنترل کنید تا بفهمید اشکال از کجاست.