问题。@ R.:对不起,你能把最好的站点连接到C和C++吗?那么,它比CPLUS软件更差。在小字母和大写字母之间选择混淆。你需要告诉我们你想要什么。“为字母表工作”真的不是很有描述性。itoa是非标准和不安全的(可能会导致缓冲区溢出)。好的,您现在将其编辑
问题。@ R.:对不起,你能把最好的站点连接到C和C++吗?那么,它比CPLUS软件更差。在小字母和大写字母之间选择混淆。你需要告诉我们你想要什么。“为字母表工作”真的不是很有描述性。itoa是非标准和不安全的(可能会导致缓冲区溢出)。好的,您现在将其编辑,c++,c,ascii,C++,C,Ascii,问题。@ R.:对不起,你能把最好的站点连接到C和C++吗?那么,它比CPLUS软件更差。在小字母和大写字母之间选择混淆。你需要告诉我们你想要什么。“为字母表工作”真的不是很有描述性。itoa是非标准和不安全的(可能会导致缓冲区溢出)。好的,您现在将其编辑为美国版本。仍然不标准,但我取消了我的否决票!正确的!我输入的对象名称错误,应该是'oss':)始终更喜欢snprintf,而不是sprintf(考虑一个具有128位int或其他内容的假设系统)+1无论如何,对于一种不会在数字不连续的字符集中中
问题。@ R.:对不起,你能把最好的站点连接到C和C++吗?那么,它比CPLUS软件更差。在小字母和大写字母之间选择混淆。你需要告诉我们你想要什么。“为字母表工作”真的不是很有描述性。itoa是非标准和不安全的(可能会导致缓冲区溢出)。好的,您现在将其编辑为美国版本。仍然不标准,但我取消了我的否决票!正确的!我输入的对象名称错误,应该是
'oss'
:)始终更喜欢snprintf
,而不是sprintf
(考虑一个具有128位int或其他内容的假设系统)+1无论如何,对于一种不会在数字不连续的字符集中中断的方法。@Mark B:Standard C要求数字是连续的。@Mark Right,从缓冲区溢出的角度来看,这肯定更安全。您在superior中指的是“boss”,但我在“boss”中读到的是“boss”,如“Bruce Springsteen是boss”也许你可以为那个案子修改一下?关于乔的方式?还是Nasa的方式?还是外星人的方式?还是上帝的方式?还是彼得·潘?圣诞老人的方式怎么样?还是重力的方式?你应该开始列清单吗?也许检查两次,以防你漏掉了什么?@AbstractDisconsonance可以用Mikes的方式得到吗™ ... 我喜欢一些球衣话筒。给你!:)好啊仍然不知道如何轻松地将整数=31345转换为ascii字符串?顺便说一句:char*digits=“0123456789”;char aChar=*位+i;你可以在缩进上下功夫。。。还要考虑代码中的其他问题。例如,char c=to_string(9)[0];如果你或者其他人能够翻译这些评论,那就太好了!
int i = 6;
char c = '6'
int i=6;
char c = '0'+i; // now c is '6'
'0'+0 = '0'
'0'+1 = '1'
'0'+2 = '2'
'0'+3 = '3'
int i=5;
char c = 'A'-1 + i; // c is now 'E', the 5th letter.
int i = 6;
char c[2];
char *str = NULL;
if (_itoa_s(i, c, 2, 10) == 0)
str = c;
std::ostringstream oss;
oss << 6;
char txt[16];
int myNum = 20;
sprintf(txt, "%d", myNum);
char digits[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
char aChar = digits[i];
char aChar = '0' + i;
itoa(i, ...)
sprintf(myString, "%d", i)
std::ostringstream oss;
oss << 6;
char aChar;
switch (i)
{
case 0:
aChar = '0';
break;
case 1:
aChar = '1';
break;
case 2:
aChar = '2';
break;
case 3:
aChar = '3';
break;
case 4:
aChar = '4';
break;
case 5:
aChar = '5';
break;
case 6:
aChar = '6';
break;
case 7:
aChar = '7';
break;
case 8:
aChar = '8';
break;
case 9:
aChar = '9';
break;
default:
aChar = '?';
break;
}
//Wait till Christmas!
sleep(457347347);
A PROGRAM TO CONVERT INT INTO ASCII.
#include<stdio.h>
#include<string.h>
#include<conio.h>
char data[1000]= {' '}; /*thing in the bracket is optional*/
char data1[1000]={' '};
int val, a;
char varray [9];
void binary (int digit)
{
if(digit==0)
val=48;
if(digit==1)
val=49;
if(digit==2)
val=50;
if(digit==3)
val=51;
if(digit==4)
val=52;
if(digit==5)
val=53;
if(digit==6)
val=54;
if(digit==7)
val=55;
if(digit==8)
val=56;
if(digit==9)
val=57;
a=0;
while(val!=0)
{
if(val%2==0)
{
varray[a]= '0';
}
else
varray[a]='1';
val=val/2;
a++;
}
while(a!=7)
{
varray[a]='0';
a++;
}
varray [8] = NULL;
strrev (varray);
strcpy (data1,varray);
strcat (data1,data);
strcpy (data,data1);
}
void main()
{
int num;
clrscr();
printf("enter number\n");
scanf("%d",&num);
if(num==0)
binary(0);
else
while(num>0)
{
binary(num%10);
num=num/10;
}
puts(data);
getch();
}
unsigned int temp = 6;
or you can use unsigned char temp = 6;
unsigned char num;
num = 0x30| temp;
unsigned char num,code;
code = 0x39; // ASCII Code for 9 in Hex
num = 0&0F & code;
char to int
char var;
cout<<(int)var-48;
int to char
int var;
cout<<(char)(var|48);
int char2int(char *szBroj){
int counter=0;
int results=0;
while(1){
if(szBroj[counter]=='\0'){
break;
}else{
results*=10;
results+=(int)szBroj[counter]-48;
counter++;
}
}
return results;
}
char * int2char(int iNumber){
int iNumbersCount=0;
int iTmpNum=iNumber;
while(iTmpNum){
iTmpNum/=10;
iNumbersCount++;
}
char *buffer=new char[iNumbersCount+1];
for(int i=iNumbersCount-1;i>=0;i--){
buffer[i]=(char)((iNumber%10)|48);
iNumber/=10;
}
buffer[iNumbersCount]='\0';
return buffer;
}
std::to_string(i)
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
char numeros[100]; //vetor para armazenar a entrada dos numeros a serem convertidos
int count = 0, soma = 0;
cin.getline(numeros, 100);
system("cls"); // limpa a tela
for(int i = 0; i < 100; i++)
{
if (numeros[i] == '-') // condicao de existencia do for
i = 100;
else
{
if(numeros[i] == ' ') // condicao que ao encontrar um espaco manda o resultado dos dados lidos e zera a contagem
{
if(count == 2) // se contegem for 2 divide por 10 por nao ter casa da centena
soma = soma / 10;
if(count == 1) // se contagem for 1 divide por 100 por nao ter casa da dezena
soma = soma / 100;
cout << (char)soma; // saida das letras do codigo ascii
count = 0;
}
else
{
count ++; // contagem aumenta para saber se o numero esta na centena/dezena ou unitaria
if(count == 1)
soma = ('0' - numeros[i]) * -100; // a ideia é que o resultado de '0' - 'x' = -x (um numero inteiro)
if(count == 2)
soma = soma + ('0' - numeros[i]) * -10; // todos multiplicam por -1 para retornar um valor positivo
if(count == 3)
soma = soma + ('0' - numeros[i]) * -1; /* caso pense em entrada de valores na casa do milhar, deve-se alterar esses 3 if´s
alem de adicionar mais um para a casa do milhar. */
}
}
}
return 0;
}