ورود

View Full Version : تغییر خروجی cout در یک متغیر



ICEMAN
چهارشنبه 09 آبان 1386, 09:49 صبح
سلام ....


#include <iostream>
int i=100;
std ::cout<<"This is a test"<<i<<endl;


This is a test 100

همه بهتر از من میدونید که خروجی این کد Console هست یعنی تو Console اون پیغام رو چاپ میکنه حالا اگه بخوام خروجی یه متغیر دیگه باشه چی ؟ یعنی عینا این پیغام رو بجایی که تو console چاپ بشه تو یه متغیر دیگه بریزه .

ممنون

SMRAH1
چهارشنبه 09 آبان 1386, 10:48 صبح
سلام
یک راه ساده این است

int i=100;
char Str[256];
sprintf("This is a test %d \n",i);
printf("%s",Str);

ICEMAN
پنج شنبه 10 آبان 1386, 20:03 عصر
سلام
یک راه ساده این است

int i=100;
char Str[256];
sprintf("This is a test %d \n",i);
printf("%s",Str);


این برنامه که نوشتی رو تونستی compile کنی


printf.cpp(8) : error C2664: 'sprintf' : cannot convert parameter 2 from 'int' to 'const char *'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
Error executing cl.exe.


من میخوام خروجی بجای console تو یه stream یا یه متغیر باشه

emad_67
پنج شنبه 10 آبان 1386, 20:19 عصر
میتونی چیزی رو که میخوای چاپ کنی کپی کنی تو یه آرایه کاراکتری:


char str[256];
strcpy(str,"This is a test");
cout<<str;

SMRAH1
جمعه 11 آبان 1386, 12:05 عصر
سلام
معذرت اشتباه شده بود.دوباره تصحیحش کردم

int i=100;
char Str[256];
sprintf(Str,"This is a test %d \n",i);
printf("%s",Str);

ICEMAN
شنبه 12 آبان 1386, 13:13 عصر
مرسی از راهنمایی هاتون ولی من مشکلم می تونستم با این راه ها حل کنم ولی موضوع چیز دیگه یی هست شاید rdbuf()
http://www.cplusplus.com/reference/iostream/ios/rdbuf.html