gpt4 book ai didi

c - 从 C 中的 *char[] 变量获取第一个字符

转载 作者:太空宇宙 更新时间:2023-11-04 02:10:07 25 4
gpt4 key购买 nike

我想在 C 中获取字符串 (char[]) 的第一个字符。

unsigned int N;
unsigned int F;
unsigned int M;
char C;
int main (int argc, char *argv[]){
if (argc!=5){
printf("Invalid number of arguments! (5 expected)\n");
exit(-1);
}
N = atoi(argv [1]);
F = atoi(argv [2]);
M = atoi(argv [3]);
C = (char) argv[4]; //this way gives a wrong char value to variable C

上面的代码给出了警告:从不同大小的整数转换为指针。

编辑:正如评论中所指出的,argv 是 char *[],而不是 char[]。

最佳答案

有两种主要方法可以做到这一点。第一种是简单地取消引用指针。

C = *argv[4];

您也可以通过数组下标来实现,它会在取消引用之前隐式地向指针添加一个偏移量。

一定要先检查是否为null,以此类推。通常,在处理指针时需要小心。

关于c - 从 C 中的 *char[] 变量获取第一个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15301495/

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