c - 如何修复 - 从 'char *' 分配给 'char' 使指针从没有强制转换的整数
问题描述
我需要从我的用户输入中删除所有逗号。该代码正在运行,但它发出警告“从'char *'分配给'char'使指针从没有强制转换的整数”。我需要摆脱这个警告。
removeCommas(argv[1]);
printf("%s", argv[1]);
return 0;
for(i=0; i<strlen(num); i++)
{
c = *(num + i);
if(c == 44)
{
*(num + i) = "";
}
}
return 0;
解决方案
*(num + i) = "";
我不确定您要在这里分配什么,但双引号 ( ""
) 表示char *
.
如果您想,
从字符串中删除 (ASCII 44),这不是这样做的方法。您需要在,
until之后移动所有字符\0
并正确终止字符串。
推荐阅读
- c++ - 编译器对数组声明大小的评估。什么时候发生?
- asp.net-mvc - 在 EF 上使用 Include 时,Get 方法返回 Null
- swift - 如何自定义 Realm 平台的 SyncUser?
- ios - SWIFT:应用程序是为 RTL 语言设计的,但是当我在基于 RTL 的语言上运行时,它会镜像
- c++ - 使用模板重载函数
- javascript - 有没有地方可以测试代码是否符合 ES5/安全?
- reporting-services - SSRS 条件最大值
- php - 输出缓冲转储空字符串,2560 字符长
- java - 使用 ArrayAdapter 不适用于片段
- javascript - crypto-js 错误的 des-ecb 解码