سلام کسی میدونه برای تعریف آرایه ای از اشاره گرها چه کدی باید بنویسم بطوریکه هر اشاره گر به یک آرایه یک بعدی اشاره کنه؟با تشکر
سلام کسی میدونه برای تعریف آرایه ای از اشاره گرها چه کدی باید بنویسم بطوریکه هر اشاره گر به یک آرایه یک بعدی اشاره کنه؟با تشکر
سلام
سوالتون کمی نامفهومه . اگه قرار بر اینه که یک آرایه تعریف کنیم دیگه اشاره گر معنایی نداره چون هر خانه از آرایه با یه اندیس مشخص میشه . ولی اگه منظورت لیست های پیوندی هستش که کلاسش به صورت آماده توی دات نت موجوده.
Dim LS As New LinkedList(Of String)
ببینید یک آرایه می خوایم که هر عنصرش یک اشاره گره به یک آرایه یک بعدی.برای مثال از این خاصیت در ماتریس مجاورت گرافها استفاده میشه بطوریه هر خانه از این آرایه مذکوربطور متناظربا عناصر یا گرههای ماتریس مجاورت گراف در ارتباط هستند.بعبارتی دیگر در این آرایه هر عنصر آرایه با تعداد گرههایی که در ماتریس در ارتباط هستند ارتباط داده میشوند.
ببین یه مثال ساده برات میزنم از ساختن اشاره گر توی VB.net ببین میتونی ایده بگیری یا بر اساس اون سوالت رو تکمیل کنی یا نه.
در مورد ماتریس مجاورت و گرافها هم باید بگم که من خیلی وقت پیش Structure رو پاس کردم و چیز زیادی از مباحث مربوط به اون یادم نمونده. ولی چون درس شیرینی بود و خیلی دوسش داشتم . خوشهال میشم دوباره با شما یه یادآوری ازشون داشته باشم.
Public Class List
Private Start As List = Nothing
Private Pointer As List = Nothing
Private [Next] As List = Nothing
Private Value As String = Nothing
Private Index As Integer = 0
Sub New()
Start = Me
Pointer = Start
End Sub
Public Sub Add(ByVal str As String)
Pointer.Value = str
Pointer.Next = New List
Pointer.Next.Index = Pointer.Index + 1
Pointer = Pointer.Next
End Sub
Public Function GetValue(ByVal Index As Integer) As String
Dim TempPointer As List = Start
If TempPointer.Index = Index Then
Return TempPointer.Value
Else
Do
TempPointer = TempPointer.Next
If TempPointer.Index = Index Then Return TempPointer.Value
Loop While Not TempPointer.Next Is Nothing
End If
Return Nothing
End Function
End Class
از راهنماییتون ممنون ولی من نمونش رو توی سی پلاس پلای اینجوری پیدا کردم
Dim * suit [4]={“heart”,”diamond”,”clubs”,”dpades }
حالا میخوام کد بالارو در ویبی تعریف کنم و هر کرکتر از کلمات رو ربا یک حلقه for چاپ کنم.؟
والا من درک نمیکنم این چه ربطی به اشاره گر داره . تا اونجایی که میدونم این فقط یع آرایه معمولی هستش.
که توی دات نت به این شکل تعریف میشه.
Dim suit() As String={"heart","Diamond","clubs","dbades"}
آخرین ویرایش به وسیله mostafaaa : یک شنبه 19 آبان 1387 در 17:06 عصر
خوب حالا چطوری میشه هر یک از حروف یک کلمه مثل heart رو جدا جدا توی هر خط یک لیست باکس ریخت؟
Dim suit() As String = {"heart", "Diamond", "clubs", "dbades"}
For Each Str As String In suit
For Each Ch As Char In Str
Me.ListBox1.Items.Add(Ch)
Next
Next
ممنون منظورم همین بود ولی برای دسترسی به هر حرف و کلمه از ایندکس توی حلقه می خواستم استفاده کنم مثل:for i=1 to n
next i
Dim suit() As String = {"heart", "Diamond", "clubs", "dbades"}
For i As Integer = 0 To suit.Length - 1
For j As Integer = 0 To suit(i).Length - 1
Me.ListBox1.Items.Add(suit(i).Chars(j))
Next
Next
End Sub
آها حالا فهمیدم ممنون .به این میگن آرایه ای از اشاره گر ها.
یک سوال دیگه اون اینکه اگه بخوایم به آخر هر کلمه یه کرکتر اضافه کنیم از چه متدی استفاده میکنیم؟مثلا ایندکس هر حلقه forرو تبدیل به رشته کنم و در آخر هر کلمه اضافه کنم؟!!!ممنونم
ببین دوست من روی اشتباهت توی سوال کردن تاکید نکن. این چیزی که شما میخواستی صرفا یه آرایه ساده در ساده ترین شکل تعریفشه. ولی اگه دوست داری بدونی که واقعا یه اشاره گر چیه بهتره به بخش الگوریتم، کامپایلر، هوش مصنوعی و ساختمان داده ها بری و اونجا در مورد اشاره گر ها مطالعه کنی.آها حالا فهمیدم ممنون .به این میگن آرایه ای از اشاره گر ها.
در مورد سوال پرسیدن هم اگه واقعا مطعن نیستی چیزی رو که داری میپرسی همون چیزیه که میخوای ، راحت ترین کار این که تصوری رو که از خروجی داری رو توی سوالت بنویسی. مثل همون کاری که توی پست 7 انجام دادید
در واقع سوال شما از اول هم همین بوده!!خوب حالا چطوری میشه هر یک از حروف یک کلمه مثل heart رو جدا جدا توی هر خط یک لیست باکس ریخت؟
امیدوارم از تذکراتم ناراحت نشده باشی
و در آخر موفق باشی
سلام یه برنامه با tc نوشتم که موقع کامپایل این پیغام خطا رو می ده.
pointer to structure required on left side of -> or->*1
if (strcmp(list[i]->getfn,fn)==0)
fn یه پارامتر از نوع charو به این operation فرستاده می شه.list[i]1 یک آرایه از نوع اشاره گرهست که هر خانه ی اون به مقادیر مختلف از یک نمونه از یک شی اشاره می کنه.فرض کنین هر خانه آرایه به جایی اشاره می کنه که نام و تلفن و شماره شناسنامه ذخیره شده.حالا می خوام نام رو در خانه ی مورد نظر از این آرایه با یه رفتار (operation)به اسم getfn که در یک کلاس دیگه نوشتمش به دست بیارم و با fn مقایسه کنم.که آیا مساوی هستن یا نه.
لطفا راهنماییم کنین که چجوری این خطا برطرف می شه.
این 1 هایی که گذاشتم رو بهشون دقت نکنین.
آخرین ویرایش به وسیله sarakh : دوشنبه 26 اردیبهشت 1390 در 11:53 صبح
اگر بخوام بدونم کدوم یکی از خانه های آرایهlist[] به جایی اشاره نمی کنه و خالی هست چه کدی باید بنویسم؟؟؟؟؟؟؟؟؟؟
پیشاپیش ممنون
لطفا من رو در مورد این دو تا سوالی که پرسیدم راهنمایی کنین.