指向char的指针

时间:2012-01-15 17:51:14

标签: c string

我查询了如何为字符分配指针

示例程序:

#include <stdio.h>

void main()
{
    const char str1[]="MANCHESTER";
    char *q;
    q=str1;
    *q='A';
    printf("%s\n",q);
}

在上面的程序中,我正在为字符串“str1”,

分配一个字符指针

当我用gcc编译程序时,我收到以下警告:

  

ptr3.c:在函数'main'中:
  ptr3.c:7:3:警告:赋值从指针目标类型中丢弃限定符

我无法理解警告的含义。

1 个答案:

答案 0 :(得分:1)

警告我得到:

2: warning: return type of 'main' is not 'int'
: In function 'main':
7: warning: implicit declaration of function 'printf'
7: warning: incompatible implicit declaration of built-in function 'printf'

添加include stdio.h并返回int,修复那些。

#include <stdio.h>

int main()
{
    char str1[]="MANCHESTER";
    char *q;
    q=str1;
    *q='A';
    printf("%s\n",q);
    return 0;
}

编辑: 我猜你不应该将char数组声明为const,如果你计划直接或间接通过另一个指针修改它