gpt4 book ai didi

c - 传递 ‘function_name’ 的参数 1 使指针来自整数而不进行强制转换

转载 作者:行者123 更新时间:2023-11-30 18:50:08 24 4
gpt4 key购买 nike

所以这是代码:

#include <stdio.h>
#include <stdlib.h>

void draw(int length, char brush);
int stringLength(char name[]);
void drawName(char nameLetter[], char brush);

int length;
char brush, name;
char *a = "Anne", *b = "Bart", *c = "Celine", *d = "Darius";

int main(void) {
printf("Write down the length of line.\n");
scanf("%d", &length);
printf("Give first letter of the name (a, b, c albo d)\n");
scanf(" %c", &name);
printf("Pick character to be used as brush.\n");
scanf(" %c", &brush);
drawName(name, brush);
return 0;
}

void draw(int length, char brush) {
int i;
for (i = 0; i < length; i++) {
printf("%c", brush);
}
}

int stringLength(char name[]) {
int i;
while (name[i] != '\0') {
i++;
}
return i;
}

void drawName(char nameLetter[], char brush) {
draw(stringLength(nameLetter), brush);
printf("%s\n", nameLetter);
draw(stringLength(nameLetter), brush);
}

我在这里想做的是获取字符串的长度,并使用该值作为另一个函数的参数,该函数负责在一行中打印尽可能多的字符,就像给定字符串中的字符一样。但我在第 19 行遇到错误:(传递“drawName”的参数 1 使指针从整数而不进行强制转换)..我已经在 stackoverflow 上阅读了与此类似的所有问题,但仍然无法使其工作。我非常感谢你的帮助!我已经走进了死胡同...

最佳答案

功能

void drawName(char nameLetter[], char brush);

使用 char * 类型的第一个参数进行声明

当您使用 char 类型的参数调用它时。

char brush, name;
^^^^^^^^^^^^^^^^
//...
drawName(name, brush);

关于c - 传递 ‘function_name’ 的参数 1 使指针来自整数而不进行强制转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40810983/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com