用指针1.编写一个程序计算一个字符串的长度。
时间: 2024-03-13 19:45:42 浏览: 17
可以通过遍历字符串中的每个字符并计数的方式来计算字符串的长度。以下是使用指针的实现方法:
```c
#include <stdio.h>
int main() {
char str[100];
char *p;
int len = 0;
printf("输入一个字符串:");
fgets(str, 100, stdin);
p = str; // 将指针指向字符串的首地址
while (*p != '\0') { // 遍历字符串中的每个字符
len++;
p++;
}
printf("字符串长度为:%d\n", len);
return 0;
}
```
首先,我们定义了一个字符数组 `str` 和一个指向字符类型的指针 `p`。然后,使用 `fgets()` 函数从标准输入中获取字符串并将其存储在 `str` 数组中。
接着,将 `p` 指针指向字符串 `str` 的首地址。通过 `while` 循环遍历整个字符串,每遍历一个字符就将长度 `len` 加 1。最后输出字符串长度即可。
相关问题
1.编写一个程序计算一个字符串的长度。c语言指针
好的,以下是 C 语言代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int length;
printf("请输入字符串:");
scanf("%s", str);
length = strlen(str);
printf("字符串长度为:%d\n", length);
return 0;
}
```
首先,定义一个字符数组 `str` 存储用户输入的字符串,并定义一个整型变量 `length` 存储字符串长度。然后,使用 `scanf()` 函数获取用户输入的字符串,并使用 `strlen()` 函数计算字符串的长度。最后,使用 `printf()` 函数输出字符串长度。注意,此处使用 `%d` 格式说明符输出整型变量 `length`。
使用arm汇编编写一个求字符串长度的程序
好的!下面是一个简单的ARM汇编程序,用于计算字符串的长度:
```
.global main
.text
main:
@ 保存栈帧指针
push {fp, lr}
mov fp, sp
@ 寄存器 r0 存放字符串的地址
mov r1, #0
loop:
@ 读取寄存器 r0 指向的字节
ldrb r2, [r0], #1
@ 如果读取到 '\0' 则跳出循环
cmp r2, #0
beq exit
@ 否则计数器加一
add r1, r1, #1
b loop
exit:
@ 寄存器 r0 返回计数器的值
mov r0, r1
@ 恢复栈帧指针并返回
pop {fp, pc}
```
这个程序使用了一个循环来逐个读取字符串中的字符,并计算字符串的长度。在读取到字符串的结尾标志 '\0' 时,程序跳出循环并返回计数器的值。