c++ - C++ 将 int 赋值给 char* 数组
问题描述
抱歉,如果以前有人问过这个问题,但我找不到任何对我的情况有帮助的东西。我正在尝试将整数分配给 char 数组中的索引。在这种情况下,将 33 分配到令牌数组的索引中。
char token[100];
int num = 33;
//Assigning num to this place in array
token[1] = num; //How do I make this work?
我希望 33 成为令牌数组中的索引,但是当我分配它并打印出来时,它给了我 '!',这是 33 的 ASCII 值。我想将 num 转换为字符串,然后将其分配给索引。那么如何将 num 转换为字符串,然后将其分配给令牌数组?
解决方案
如果您的意思是,您有一个指向 char 数组的指针,您可以这样做。
char* token = new char[100];
token[0] = 33; // You actually get '!' since char 33 is indeed '!'
std::cout << (int)token[0] << std::endl; // cast it to an int, 33 is back
如果要使用 char 指针数组,可以这样做:
char* token[100];
char* temp = new char; // You need a char* to store it since char is 1byte and int is 4byte
*temp = 33; // or *temp = num; in your case
token[0] = temp; // You still get '!' since char 33 is indeed '!'
std::cout << (int)*token[0] << std::endl; // cast it to an int
推荐阅读
- symfony - 在 API 平台中获取组中所有属性的列表
- prometheus - 当我在 Prometheus 中的抓取间隔为 15 秒时,为什么我得到不同的间隔?
- python - 使用 pymongo 查找收集中的先前数据和新数据之间的时间差
- javascript - 将列动态添加到 html 表并将输入发送到数据库
- c# - 时间:2019-05-10 标签:c#databasesqlinnerjoin
- swift - Swift 在页面加载之前从 Firebase 获取数据
- angular-schematics - 如何在自定义`ng new`中调用库的`ng add`
- python - 将箱中的一些物品分配给不同数量的订单
- python-3.x - 基于 Pandas 中的多个条件的 Groupby 和过滤行
- f# - F# | Array.map & Array.filter 一步到位(单一功能)