الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

التحويل من long أو int الي string و String concat

مغلق
بدأه msaqer في 23 فبراير 2005 · 7 رد · 652 مشاهدة · في ارشيف قسم C/C++
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

أنا بعمل برنامج علي السي في نظام التشغيل Mandark UNIX

كيف يا أخوان ممكن في C التحويل من long أو int الي string . لقد حاولت أستخدام '+' و لكن بعطيني خطأ ، و كمان جربت أعمل تحويلcast باستخدام (char) و أيضأ بعطيني خطأ.

أيضا كيف ممكن وصل String concatenation متغيرين واحد منهم مصفوفة و الأخر حرف، إستخدمت '+' و لكن بعطيني خطأ و أستخدمت الدالة strcat و أيضا في أخطاء.

ممكن يا أخوان المساعده و تفسير سبب الأخطاء.

#2

السلام عليكم

أنا يا أخوان في حاجة ماسة للمساعدة .

أرجو المساعدة و بسرعة إذا ممكن

السلام عليكم

#3

اهلا بك ..

اولا تصحيح بسيط .. اسمه Mandrakde Linux وليس Mandrake UNIX

يوجد فرق ... يونكس مدفوع .. اما لنكس مجاني ..

اخي سؤالك غير مفهوم .. لكن بحكم تجربتي في لنكس ..

انا عتقد انك كتبت برنامج سي بسيط واردت عمل كومبايل له .. ومن رسالة الخطأ فهمت ان المقصود عملية تحويل او شي مثل هذا ..

اعطيني الفكرة بالضبط وان شاء الله اقدر اساعدك لان سؤالك غير مفهوم نهائيا

تحياتي/

ابوخلود

#4

السلام عليكم

أدرس الكود التالي

  #include <stdio.h>
  #include <conio.h>
  //#include <string>
  #include <cstring.h>
  #include <iostream.h>
  //using namespace std;
  int main(void)
  {
     int number = 12345;
     char char_string[25];

     itoa(number, char_string, 10);
     int len = strlen(char_string);
     string str('1',len);
     for (int i=0; i<len;i++)
     {
     	 str = char_string;
     }
     char *catstr = strcat(char_string , " Kb");
     printf("integer = %d \n" , number);
     printf("char_string = %s \n" , char_string);
     cout << "str= "<< str << endl;
     cout << "catstr= "<< catstr;
     //getch();
     return 0;
  }
#5

السلام عليكم

إذا كنت تقصد التحويل بين الأعداد و strings

يمكنك استخدام دوال التحويل الموجودة في stdlib.h

مثل atoi للتحويل من stirng الى integer

و stol للقيام بالعكس.

لا اعتقد انه يمكنك وصل مصفوفة و char لانهما لا يتوافقان.

#6

لم أفهم البرنامج تماما .. لأني من فترة طويلة لم امارس اللغة ..

:) ولا استطيع اجاباتك في الكود .. اعتقد ان الاخ ib_doom كفى ووفى ..

حاول تسوي له كومبايل من الويندوز .. اذا ما اشتغل .. بتكون المشكلة من الكود .. اما اذا اشتغل بتكون المشكلة من كومبايلر GCC الخاص باللنكس ..

الطريقة المثلى لعمل كومبايل في اللنكس

gcc test.c -o test

chmod +x test

test/.

:) جرب

#7

مثال إضافة نص إلى مصفوفة نصوص

#include "stdafx.h"
#include "string.h "

int main(int argc, char* argv[])
{
	char xx[2][255];
	char x[] = "2000-forum.com"; //will be added to the string array
	strcpy(xx[0],"www.arabteam");
	strcpy(xx[1],"www.arabteam");//just an example string array
	strcat(xx[0],x);
	strcat(xx[1],x);
	printf("%s\n%s\n\n",xx[0],xx[1]);
	/*
  remember always when you declare your string array
  it will always be 1 dimension less of the declared dimension
  for example when it is 2D array you will use it as 1D 
	*/

	return 0;
}

روح لهاذا الموقع click hereلو تريد تعرف كل دوال التحويل أو ريح نفسك و أستخدم sprintf()

#8

السلام عليكم

شكراً لجميع الأخوان على المساعدة

sprintf() تقريبا حلت المشكلة.

إلي الأخ v1r05

اقتباس
remember always when you declare your string array

it will always be 1 dimension less of the declared dimension

for example when it is 2D array you will use it as 1D

أنا ما فهمت عليك أن المصفوفه بتكون أقل one dimension less that it is actually declared ، آخي أنت متأكد من هذه المعلومة ، الرجاء التوضيح إذا ممكن.

السلام عليكم

هذا الموضوع مغلق.

مواضيع مشابهة