首页 > 解决方案 > 如何修复 - 从 '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;

标签: c

解决方案


        *(num + i) = "";                                               

我不确定您要在这里分配什么,但双引号 ( "") 表示char *.

如果您想,从字符串中删除 (ASCII 44),这不是这样做的方法。您需要在,until之后移动所有字符\0并正确终止字符串。


推荐阅读