C语言for循环遍历argv中的字符串,一个一个字符打印

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言for循环遍历argv中的字符串,一个一个字符打印相关的知识,希望对你有一定的参考价值。

这个应该怎么写?大致是
for(用p遍历argv[1])
int a=*p;
printf("%c",a);

这样,主要问下for循环括号里怎么写,谢谢

标准的main函数格式为:

int main(int argc, const char * argv[]);

用于存储命令行参数的argv是一组字符串,字符串的个数为argc的值。

所以要打印argv中的值,一般使用如下程序:

int i;
for(i = 0; i < argc; i ++)
    printf("%s\\n",argv[i]);

这时一个个字符串打印的。没有必要要一个个字符打印。

如果要一个个字符打印,可以使用双重循环:

int i,j;
for(i = 0; i < argc; i ++)

    for(j = 0; argv[i][j]!=\'\\0\'; j ++)//打印一个字符串中的所有字符值。
        putchar(argv[i][j]);
    putchar(\'\\n\');
参考技术A 大概是这个样子吧

#include<stdio.h>
int main(int argc, char **argv)

if(argc<2)return 1;

for (char *p=argv[1];*p;*p++)

int a=*p;
printf("%c",a);

return 0;
参考技术B int main(int argc, char * argv[])
int i;
char *p;
for (i=1;i<argc;i++)
p = argv[i];
while (*p!=NULL)
printf("%c", *p++);

printf("\n");

追问

抱歉麻烦您了,如果是在一个函数里,例如
abc(int argc,char **argv)


这样的话,上面您写的程序有哪里需要改动吗?十分感谢!

追答追问

实在不好意思,您能把代码贴上来吗?如果追问字数不够请您重新回答一下,因为我电脑有点问题没法下载,感谢!我会追加分的

追答

我刚删掉.....
其实你自己也可以解决。
------------------------------------------------------------
#include
void process(int argc, char **argv);

int main(int argc, char * argv[])

process(argc, argv);
return 0;

void process(int argc, char **argv)

int i;
char *p;
for (i=1;i<argc;i++)
p = argv[i];

while (*p != 0)
printf("%c", *p++);

printf("\n");

本回答被提问者采纳
参考技术C 还有一个方法:
#include<iostream>
#include<string>
#include<vector>
using namespace std;
int main()
vector<string>str;
const int n = 10;
string str1[n];
string str3;
while (cin >>str3 )
str.push_back(str3);
if (str3 == "GG")
break;

for (auto &p : str)
cout << p << " ";
cout << endl;
参考技术D 楼主,你确定是要遍历main中得argv吗?
我觉得是不是应该是不是判定一下argv中是否是字符串,然后再判定字符串的数量.

Python for 循环

Python for 和其他语言一样,也可以用来循环遍历对象,本文章向大家介绍Python for 循环的使用方法和实例,需要的朋友可与参考一下。

一个循环是一个结构,导致第一个程序要重复一定次数。重复不断循环的条件仍是如此。当条件变为假,循环结束和程序的控制传递给后面的语句循环。 

 

for循环:

在Python for循环遍历序列的任何物品,如一个列表或一个字符串,有能力。

for循环语法是:

for iterating_var in sequence:
   statements(s)

如果一个序列包含一个表达式列表,它是第一个评价。然后,该序列中的第一项分配迭代变量iterating_var。接下来,执行语句块。列表中的每个项目分配到iterating_var,报表块被执行,直到整个序列被耗尽。

注:在Python中,所有的缩进字符空格后的编程结构相同数量的报表,被认为是一个单一的代码块的一部分。 Python使用缩进作为其语句分组的方法。

例子:

#!/usr/bin/python

for letter in Python: # First Example
   print Current Letter :, letter

fruits = [banana, apple,  mango]
for fruit in fruits:        # Second Example
   print Current fruit :, fruit

print "Good bye!"

以上将输出结果:

Current Letter : P
Current Letter : y
Current Letter : t
Current Letter : h
Current Letter : o
Current Letter : n
Current fruit : banana
Current fruit : apple
Current fruit : mango
Good bye!

 

迭代序列指数:

通过遍历每个项目的另一种方法是由序列本身的偏移指数:

例如:

#!/usr/bin/python

fruits = [banana, apple,  mango]
for index in range(len(fruits)):
   print Current fruit :, fruits[index]

print "Good bye!"

这将产生以下结果:

Current fruit : banana
Current fruit : apple
Current fruit : mango
Good bye!

在这里,我们采取的len()的协助下,内置的功能,它提供了tuple中的元素的总数,以及范围()内置函数给我们的实际顺序遍历。

原文地址:http://www.manongjc.com/article/971.html

相关阅读:

Python 循环控制break continue语句讲解

python 绝对值函数 abs() 实例

python 删除文件和目录的两种方法

python os.system 执行系统命令

python 全局变量与局部变量讲解

以上是关于C语言for循环遍历argv中的字符串,一个一个字符打印的主要内容,如果未能解决你的问题,请参考以下文章

c语言如何遍历枚举元素

*。*在C中的argv [1]中

C语言,怎么利用一个循环遍历一个二维数组呀?急!!!

悄悄地学C语言,一不小心就成了万字长文道尽字符串分支语句和循环语句

PHP for循环中怎么让字符串超过固定特定长度后自动换行?

如何用c语言双for循环输出下面图形??