የቁልፍ ልዩነት - ከሬፍ ጋር በC
C በማይክሮሶፍት የተገነባ ዘመናዊ የፕሮግራሚንግ ቋንቋ ነው። ለዴስክቶፕ፣ ለድር እና ለሞባይል የተለያዩ መተግበሪያዎችን ለማዘጋጀት ያገለግላል። ተግባራት ወይም ዘዴዎች በፕሮግራም ውስጥ ጽንሰ-ሀሳብ ነው. የተለየ ተግባር ለመፈፀም የሚያገለግለው ያ የአረፍተ ነገር ቡድን ተግባር ወይም ዘዴ በመባል ይታወቃል። በ Cፕሮግራሞች ውስጥ, አፈፃፀሙ ከዋናው () ይጀምራል. የአንድ ዘዴ ምሳሌ ነው። አንድ ዘዴ ሲደውሉ, መረጃ ወደ ዘዴው ይተላለፋል ወይም ከስልቱ ይቀበላል. አዲሱን ዘዴ የሚጠራው ዘዴ ዘዴውን በመጥራት ይታወቃል. አዲሱ ዘዴ ዘዴ ተብሎ ይጠራል. የማለፊያ እሴቶችን ለማስተዳደር እና ውጤቱን ለመመለስ Cግቤቶችን ይጠቀማል።ዋጋ ያላቸው መለኪያዎች, የውጤት መለኪያዎች እና የማጣቀሻ መለኪያዎች ናቸው. የዋጋ መለኪያዎች መለኪያዎችን በእሴት ወደ ዘዴው ለማስተላለፍ ያገለግላሉ። የማመሳከሪያው መመዘኛዎች መለኪያዎችን ወደ ዘዴው በማጣቀሻነት ለማስተላለፍ ያገለግላሉ. የውጤት መለኪያዎች ውጤቱን ከስልቱ ለመመለስ ያገለግላሉ. በ Cውስጥ የውጤት መመዘኛዎች የውጤት ቁልፍ ቃል ጥቅም ላይ ይውላል እና የማጣቀሻ ቁልፍ ቃል ግቤቶችን ለማጣቀስ ጥቅም ላይ ይውላል። በ Cውስጥ በውጪ እና በማጣቀሻ መካከል ያለው ቁልፍ ልዩነት የውጤት መለኪያን ለማመልከት የሚያገለግል ቁልፍ ቃል ሲሆን ውጤቱን ከተጠራው ዘዴ ወደ ጥሪ ዘዴ ለማለፍ የሚያገለግል ሲሆን ማጣቀሻ ግን ለማለፍ የሚያገለግል የማጣቀሻ መለኪያን ለማመልከት ቁልፍ ቃል ነው ። ዳታ ከጥሪ ዘዴ ወደ ጥሪ ዘዴ እና ውሂቡን ከተጠራው ዘዴ ወደ ጥሪ ዘዴ ለመቀበል።
በC ውስጥ ምን አለ?
የተግባር ወይም የአንድ ዘዴ አገባብ እንደሚከተለው ነው። ዘዴው እንደ ስልት ስም፣ የልኬት ዝርዝር፣ የመመለሻ አይነት እና የመዳረሻ ገላጭ ያሉ በርካታ አባላት አሉት።
(የመለኪያ ዝርዝር)
{ //መግለጫዎችን ለማስፈጸም
}
እያንዳንዱ ዘዴ የተግባር ጥሪ ለማድረግ ልዩ ዘዴ አለው። ሊተገበሩ የሚችሉ መግለጫዎች በተጠማዘዘ ማሰሪያ ውስጥ ናቸው። የመመለሻ አይነት ተግባሩ ዋጋ ይመልስ ወይም አይመልስ ያብራራል። የመመለሻ አይነት በማይኖርበት ጊዜ ባዶ ይባላል. የመዳረሻ ገላጭ በመተግበሪያው ውስጥ ያለውን ዘዴ ተደራሽነት ለመለየት ጥቅም ላይ ይውላል። መለኪያዎቹ ወደ ዘዴው ውሂብ ለመቀበል ወይም ለማስተላለፍ ያገለግላሉ። ምንም መለኪያዎች የሌላቸው ዘዴዎችም ሊኖሩ ይችላሉ. መለኪያዎች ዋጋ የሚሰጣቸው መለኪያዎች፣ የውጤት መለኪያዎች ወይም የማጣቀሻ መለኪያዎች ሊሆኑ ይችላሉ።
የውጤት መለኪያዎች ውጤቶቹን ወደ የጥሪ ዘዴ ለመመለስ ያገለግላሉ። ለዚያ, መለኪያው ከቁልፍ ቃሉ ጋር መታወጅ አለበት. የውጤት መለኪያው አዲስ የማከማቻ ቦታ አይፈጥርም. በአጠቃላይ አንድ ዘዴ አንድ እሴት ይመልሳል.ነገር ግን በ Cውስጥ የውጤት መለኪያዎችን በመጠቀም ሁለት እሴቶችን ከአንድ ተግባር መመለስ ይቻላል. ከታች ያለውን ፕሮግራም ይመልከቱ።
ስም ቦታ መተግበሪያ1{
የህዝብ ክፍል ስሌት{
የሕዝብ ባዶ ማሳያ(out int a, out int b){
int እሴት=5፤
a=እሴት፤
b=እሴት፤
a=a a;
b=bb;
}
የህዝብ የማይንቀሳቀስ ባዶ ዋና(ሕብረቁምፊ args){
int እሴት1=10፣ እሴት2=20፤
ስሌት cal=አዲስ ስሌት();
cal.display(ውጪ እሴት1፣ ውጭ እሴት2)፤
ኮንሶል.ማንበብ መስመር();
}
}
}
የማሳያ ተግባሩ የሚጠራው ከዋናው ዘዴ ነው። እሴቱ1 እና እሴቱ ሁለቱ 10 እና 20 አላቸው፣ ግን ወደ ዘዴው አይወሰዱም። የ a እሴት 25 እና የ b እሴት ደግሞ 25 በተግባሩ ውስጥ ነው።ስለዚህ, እነዚህ እሴቶች ይመለሳሉ. እሴት1 እና እሴት2 ሲታተም 10 እና 20 አይሰጥም።ይልቁንስ 25 እና 25 ያትማል።የወጣውን ቁልፍ ቃል በመጠቀም በርካታ እሴቶችን ከስልቱ መመለስ ይቻላል።
ሪፍ በC ምንድን ነው?
ልኬቶችን በእሴት ሲያልፉ ለእያንዳንዱ ግቤት አዲስ የማከማቻ ቦታ ይፈጠራል። ከዋናው ፕሮግራም የተላኩት ትክክለኛ መለኪያዎች አይለወጡም. በምትኩ፣ እነዚያ እሴቶች ወደተለየ ቦታ ይገለበጣሉ። እነዚያ አዲስ ተለዋዋጭ ቅጂዎች መደበኛ መለኪያዎች ይባላሉ። ከታች ያለውን ኮድ ይመልከቱ።
ስም ቦታ መተግበሪያ1{
የህዝብ ክፍል ስሌት{
የህዝብ ባዶ ቅያሪ(int x, int y){
int temp፤
temp=x;
x=y፤
y=ሙቀት፤
}
የህዝብ የማይንቀሳቀስ ባዶ ዋና(ሕብረቁምፊ args){
ስሌት cal=አዲስ ስሌት();
int p=2;
int q=3;
cal.swap(p,q);
ኮንሶል.መጻፊያ መስመር(p);
ኮንሶል.መጻፊያ መስመር(q)፤
ኮንሶል.ማንበብ መስመር();
}
}
}
ከላይ ባለው ፕሮግራም መሰረት፣ የሒሳብ ክፍል የመቀያየር ዘዴ () አለው። በዋናው ፕሮግራም ውስጥ ፣ የሂሳብ ስሌት ዓይነት ተፈጠረ። እንደ p እና q ያሉ ሁለት እሴቶች አሉ። ተለዋዋጭ p ዋጋ 2 እና q ተለዋዋጭ እሴት አለው 3. ሁለቱ እሴቶች ወደ ስዋፕ ዘዴ ተላልፈዋል. በመቀያየር ዘዴ፣ እሴቱ 2 በተለዋዋጭ x እና እሴት 3 ወደ ተለዋዋጭ y ይገለበጣል። የሙቀት ተለዋዋጭን በመጠቀም, እሴቶቹ ይቀያየራሉ. ወደ ዋናው ፕሮግራም ተመለስ p እና q በሚታተሙበት ጊዜ እሴቶቹ አይለዋወጡም. የ p እሴቱ አሁንም 2 ነው እና q እሴት 3 ነው። በመቀያየር ዘዴ ውስጥ እንኳን እሴቶቹ ይለዋወጣሉ ነገር ግን በዋናው ፕሮግራም ላይ አይንጸባረቁም።
ከላይ እንደተገለጹት እሴቶች ከማለፊያ በተለየ፣ መለኪያዎችን በማጣቀሻ ማለፍ ይቻላል። የማመሳከሪያ ተለዋዋጭ የማህደረ ትውስታ ቦታ ማጣቀሻ ነው.አዲስ የማህደረ ትውስታ ቦታ አልተፈጠረም። በዋናው ፕሮግራም ውስጥ በተንፀባረቀው ዘዴ ላይ የተደረጉ ለውጦች. በ Cውስጥ, የማመሳከሪያዎቹ መለኪያዎች የሚጠቀሱት የማጣቀሻ ቁልፍ ቃልን በመጠቀም ነው. ከታች ያለውን ፕሮግራም ይመልከቱ።
ስም ቦታ መተግበሪያ1{
የህዝብ ክፍል ስሌት{
የህዝብ ባዶ ቅያሪ(ref int x, ref int y){
int temp፤
temp=x;
x=y;
y=ሙቀት፤
}
የህዝብ የማይንቀሳቀስ ባዶ ዋና(ሕብረቁምፊ args){
ስሌት cal=አዲስ ስሌት();
int p=2;
int q=3;
cal.swap(ref p, ref q);
ኮንሶል.መጻፊያ መስመር(p);
ኮንሶል.መጻፊያ መስመር(q)፤
ኮንሶል.ማንበብ መስመር();
}
}
}
ከላይ ባለው ፕሮግራም መሰረት የክፍል ስሌት የመቀያየር ዘዴ አለው።በዋናው ፕሮግራም ውስጥ ፣ የሂሳብ ስሌት ዓይነት ተፈጠረ። እንደ p እና q ያሉ ሁለት ተለዋዋጮች ናቸው። የፒ ተለዋዋጭ እሴት 2 እና q ተለዋዋጭ እሴት አለው 3. እሴቶችን ከማለፍ ይልቅ የ p እና q ማህደረ ትውስታ ቦታዎች ማጣቀሻ ወደ ዘዴው ይተላለፋል. እነዚያ የማጣቀሻ ተለዋዋጮች ማጣቀሻን በመጠቀም ተጠቅሰዋል። በመቀያየር ዘዴ ውስጥ እሴቶቹን ወደ አዲስ ቦታ ከመቋቋም ይልቅ ለውጦቹ በትክክለኛ መለኪያዎች ላይ ይደረጋሉ. የዋናውን ፕሮግራም p እና q እሴቶችን በሚታተምበት ጊዜ የተለዋወጡትን እሴቶች ይሰጣል። አሁን p ዋጋው 3 እና q ዋጋው 2 ነው።
ከውጪ እና ሪፍ በC መካከል ያለው ተመሳሳይነት ምንድነው?
ሁለቱም የአንድ ዘዴ መለኪያዎችን ለማመልከት የሚያገለግሉ ቁልፍ ቃላት ናቸው።
ከውጪ እና ማጣቀሻ በC መካከል ያለው ልዩነት ምንድን ነው?
ውጭ vs ref በC |
|
The out በC ውስጥ ያለ ቁልፍ ቃል ሲሆን የውጤት መለኪያን ለማመልከት የሚያገለግል ነው። ውጤቱን ከተጠራው ዘዴ ወደ ዘዴው ለመደወል ጥቅም ላይ ይውላል። | ማመሳከሪያው በC ውስጥ ያለ ቁልፍ ቃል ሲሆን የማጣቀሻ መለኪያን ለማመልከት ያገለግላል። መረጃን ከጥሪ ዘዴ ወደተጠራው ዘዴ ለማስተላለፍ እና ከተጠራው ዘዴ ወደ ጥሪ ዘዴ ለመመለስ ይጠቅማል። |
ተግባር | |
ቁልፍ ቃሉን ሲጠቀሙ ውሂቡ ከጥሪ ዘዴ ወደ ተጠራው ዘዴ ሊተላለፍ ይችላል። ግን ያ መረጃ ተጥሏል። ውጤቱን ከተጠራው ዘዴ ወደ ጥሪ ዘዴ ለማስተላለፍ ጥቅም ላይ ይውላል። | ቁልፍ ቃላቱን ሪፍ ሲጠቀሙ ውሂቡ ከጥሪ ዘዴ ወደ ሚጠራው ዘዴ ይተላለፋል እና የተቀነባበረው ውሂብ ወደ የጥሪ ዘዴ ይመለሳል። |
ዳታ ማለፍ | |
ቁልፍ ቃሉን ሲጠቀሙ ውሂቡ በአንድ መንገድ ይተላለፋል ይህም ወደ የጥሪ ዘዴ ይባላል። | ቁልፍ ቃል ሪፍ ሲጠቀሙ ውሂቡ በሁለት መንገድ ይተላለፋል እነዚህም ከጥሪ ዘዴ ወደተጠራው ዘዴ እና ከተጠራው ዘዴ ወደ ጥሪ ዘዴ። |
ማጠቃለያ - ከማጣቀሻ ጋር በC
ዘዴን በሚጠሩበት ጊዜ እሴቶቹን ወደ ዘዴው ማስተላለፍ እና ውጤቱን ከስልቱ ለመመለስ አስፈላጊ ሊሆን ይችላል። ይህንን ለማሳካት Cየተለያዩ መለኪያዎች አሉት። የዋጋ መለኪያዎች መለኪያዎችን በእሴት ወደ ዘዴው ለማስተላለፍ ያገለግላሉ። የማመሳከሪያው መመዘኛዎች መለኪያዎችን ወደ ዘዴው በማጣቀሻነት ለማስተላለፍ ያገለግላሉ. የውጤት መለኪያዎች ውጤቱን ከስልቱ ለመመለስ ያገለግላሉ. በ Cውስጥ የውጤት መመዘኛዎች የውጤት ቁልፍ ቃል ጥቅም ላይ ይውላል እና የማጣቀሻ ቁልፍ ቃል ግቤቶችን ለማጣቀስ ጥቅም ላይ ይውላል። በ Cውስጥ በውጤት እና በማጣቀሻ መካከል ያለው ልዩነት የውጤት መለኪያን ለማመልከት የሚያገለግል ቁልፍ ቃል ሲሆን ውጤቱን ከተጠራው ዘዴ ወደ የጥሪ ዘዴ ለማለፍ የሚያገለግል ሲሆን ሪፍ ደግሞ መረጃን ለማስተላለፍ የሚያገለግል የማጣቀሻ ፓራሜትር ለማመልከት ቁልፍ ቃል ነው ። የመደወያ ዘዴ ወደ ጥሪ ዘዴ እና ውሂቡን ከተጠራው ዘዴ ወደ ጥሪ ዘዴ ለመቀበል።
ከዉጭ vs ref በC አውርድ
የዚህን ጽሁፍ ፒዲኤፍ ስሪት አውርደው በጥቅስ ማስታወሻ መሰረት ከመስመር ውጭ አላማዎች መጠቀም ይችላሉ። እባክዎ የፒዲኤፍ ሥሪቱን እዚህ ያውርዱ፡ በመውጫ እና በማጣቀሻ መካከል ያለው ልዩነት በC