मैं ASCII string
से TBCD(Telephony Binary-Coded Decimal)
प्रारूप और सी में इसके विपरीत रूपांतरित करना चाहता हूं। मैंने कई साइटों पर खोज की लेकिन मुझे मेरा जवाब नहीं मिला।एसीसीआईआई से टीबीसीडी रूपांतरण में सी
5
A
उत्तर
5
संभवतः प्रत्येक एएससीआईआई चरित्र को अपने टीबीसीडी समकक्ष को मैप करने के लिए सरणी की एक जोड़ी का उपयोग करना सबसे आसान है। और इसके विपरीत।
what I read on Wikipedia से आप का उपयोग करना चाहिए निम्नलिखित:
const char *tbcd_to_ascii = "*#abc";
const char ascii_to_tbcd[] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0,11, 0, 0, 0, 0, 0, 0,10, 0, 0, 0, 0, 0, /* # * */
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 0, 0, 0, 0, 0 /* digits */
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0,12,13,14 /* a b c */
};
आप एक TBCD है, ASCII करने के लिए आप क्या करेंगे यह कन्वर्ट करने के लिए:
/* The TBCD to convert */
int tbcd[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 };
/* The converted ASCII string will be stored here. Make sure to have enough room for the result */
char ascii[16];
/* Convert the TBCD to ASCII */
int i;
for (i = 0; i < sizeof(tbcd)/sizeof(*tbcd); i++)
ascii[i] = tbcd_to_ascii[tbcd[i]];
/* For safety, null terminate the ASCII string */
ascii[i] = 0;
TBCD को ASCII से परिवर्तित करने के लिए बहुत समान है :
for (i = 0; ascii[i]; i++)
tbcd[i] = ascii_to_tbcd[ascii[i]];
2
#include <ctype.h>
int cnv_tbcd(char *str, char *tbcd) {
int c = 0;
int err = 0;
for (c=0; str[c]; c++) {
if (isdigit(str[c])) {
tbcd[c] = str[c] & 0x0f;
} else {
switch(str[c]) {
case '*': tbcd[c] = 0x0a; break;
case '#': tbcd[c] = 0x0b; break;
case 'a': tbcd[c] = 0x0c; break;
case 'b': tbcd[c] = 0x0d; break;
case 'c': tbcd[c] = 0x0e; break;
default: tbcd[c] = 0xff; err++;
}
}
}
if (c % 2 == 0) {
tbcd[c] = 0x0f;
tbcd[c+1] = 0;
}
return err;
}
+0
हाँ, उत्तर अपडेट किया गया – perreal
संबंधित मुद्दे
- 1. स्ट्रिंग से चार में रूपांतरण - सी ++
- 2. सी ++ जेएसओएन रूपांतरण से प्रोबॉफ
- 3. सी ++ रूपांतरण
- 4. सी # हैशसेट रूपांतरण सूची में
- 5. सी # में स्वत: प्रकार रूपांतरण
- 6. फोरट्रान 9 0 से सी # रूपांतरण समस्या
- 7. सी # निहित रूपांतरण
- 8. सी सामान्य अंकगणितीय रूपांतरण
- 9. सी ++ निहित रूपांतरण
- 10. सी ++ ऑटो रूपांतरण
- 11. सी ++ पूर्णांक स्ट्रिंग रूपांतरण
- 12. टाइप 'स्ट्रिंग' से 'int' में परिवर्तित नहीं हो सकता है एक संदर्भ रूपांतरण, मुक्केबाजी रूपांतरण, unboxing रूपांतरण, लपेटकर रूपांतरण या नल प्रकार रूपांतरण के माध्यम से
- 13. सी # गतिशील प्रकार रूपांतरण
- 14. सी ++ अंतर्निहित रूपांतरण
- 15. उद्देश्य सी रूपांतरण NSDecimalNumber
- 16. सीएसटींग से एलपीसीटीआरआर रूपांतरण
- 17. सी # int बाइट रूपांतरण
- 18. हेक्स में एएससीआईआई एसीसीआईआई में एन्कोडेड एएससीआईआई स्ट्रिंग से कनवर्ट करें?
- 19. सी # मौजूदा प्रकारों में आरोपी रूपांतरण जोड़ना
- 20. क्या (पूर्णांक और) सी में रूपांतरण ++
- 21. हेक्स से एसीआई स्ट्रिंग रूपांतरण
- 22. सी ++ लागू रूपांतरण ऑपरेटर प्राथमिकता
- 23. तेजी से रूपांतरण
- 24. आरजीबी से मोनोक्रोम रूपांतरण
- 25. emf से jpg रूपांतरण
- 26. एक्सएमएल से एसक्यूएल रूपांतरण
- 27. एचटीएमएल से आरटीएफ रूपांतरण
- 28. आरजीबी-> वाईयूवी रूपांतरण सी/सी ++ में कैसे करें?
- 29. जावा में लांग टू डबल से रूपांतरण
- 30. जावास्क्रिप्ट में जेपीईजी से एसवीजी का रूपांतरण
टी बीसीडी के लिए सी कार्यान्वयन यहां दिया गया है: http://en.wikipedia.org/wiki/Double_dabble –
@kmkaplan मान लीजिए कि मेरे पास एएससीआईआई में परिवर्तित होने के लिए टीबीसीडी प्रारूप में आईएमएसआई है। Arrays कैसे ऊपर मदद करेगा? –
@ डीजे मुझे वास्तव में पता नहीं है कि आईएमएसआई क्या है, लेकिन मैंने एक उदाहरण देने के लिए अपना जवाब संपादित किया कि आप एक टीबीसीडी सरणी को ASCII स्ट्रिंग में कैसे परिवर्तित करेंगे। – kmkaplan