c - 警告 : passing argument 1 of ‘uart1_sendchar’ makes pointer from integer without a cast [enabled by default]

标签 c linux

我收到警告,但我尝试从类似的帖子中获取信息,但没有得到满意的结果 printstring 获取 unsigned char 并发送 char take *char 那么我是否必须输入强制类型转换或其他内容?请帮忙

uartcustom.c: In function ‘uart1_printString’:
uartcustom.c:162:9: warning: passing argument 1 of ‘uart1_sendchar’ makes pointer
                             from integer without a cast [enabled by default]
uart1_sendchar(string[local_counter]); // print each character
     ^

使用的两个函数是 串口1_发送字符 和 uart1_printstring

/*****************************************************************************   
 //     Uart 1 send char                         */ 
 /***************************************************************************/
void uart1_sendchar(char* tempchar)
{
    int temp;
    temp=write(device_uart1,&tempchar,1);
    if(temp < 0) 
    {
        printf("port failed to write\n");
    }
}



/*****************************************************************************   
//      Uart 1 printstring                       */ 
/*****************************************************************************/

void uart1_printString( unsigned char *string)
{
    int local_counter = 0;
    // loop through until reach string's zero terminator
    while (string[local_counter] != 0)
    {
        uart1_sendchar(string[local_counter]); // print each character
        local_counter++;
    }
}

最佳答案

stringunsigned char *,因此 string[local_counter]unsigned char

您可能想要:

uart1_sendchar(&string[local_counter]);

关于c - 警告 : passing argument 1 of ‘uart1_sendchar’ makes pointer from integer without a cast [enabled by default],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35623840/

相关文章:

c - 客户端/服务器中的 write()/read(),C 中的 pthread 应用程序在非主线程上总是返回 -1?

linux - Ubuntu JeOS 适合生产用途吗?

java - Shell脚本java程序不能正确写入文件

c - 内存泄漏与否 - 链表

c++ - 如何获取视频采集设备信息?

r - 使用opencpu连接云服务器时获取授权签名消息

linux - Unix:cat 本身做什么?

c - C程序的目录结构是什么样的?

c - 为什么这个简单的程序给我看似不正确的输出?

c - fscanf 如何将 20.20.2012 之类的日期导入一个变量?