Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
enslaver |
3.10.2011, 8:08
Сообщение
#1
|
|
Студент ![]() Группа: Участник Сообщений: 30 Регистрация: 25.3.2010 Пользователь №: 1565 Спасибо сказали: 0 раз(а) Репутация: 0
|
думаю многим известно начало
собственно получаем в argv[0] имя нашей программы, которое возьмем для исследования. наша задача узнать сколько символов содержится в строке которая находится по argv[0]; Хочу узнать как эту задачу решили бывалые и эксперты. |
|
|
|
|
Алексей1153 |
3.10.2011, 8:48
Сообщение
#2
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2946 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34
|
Link
по меньшей мере есть 2 способа: 1) глянуть значение argc и столько элементов выбирать 2) выбирать элементы, пока argv[i]!=0 |
|
|
|
|
maint |
3.10.2011, 9:30
Сообщение
#3
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 235 Регистрация: 3.8.2009 Из: Иркутск Пользователь №: 982 Спасибо сказали: 28 раз(а) Репутация: 2
|
угу, определить не utf-какой ли там подсунули в качестве параметров, то же не кисло бы. От типа кодировки и плясать. Мне так кааэтся
|
|
|
|
|
Алексей1153 |
3.10.2011, 9:33
Сообщение
#4
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2946 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34
|
maint, я так понимаю, что говорим про ascii всё же - ведь передаются параметры из командной строки . В то же время ascii входит в состав utf8 и тут конфликта не будет
|
|
|
|
|
maint |
3.10.2011, 9:57
Сообщение
#5
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 235 Регистрация: 3.8.2009 Из: Иркутск Пользователь №: 982 Спасибо сказали: 28 раз(а) Репутация: 2
|
Цитата(Алексей1153 @ 3.10.2011, 15:33) Link maint, я так понимаю, что говорим про ascii всё же - ведь передаются параметры из командной строки . В то же время ascii входит в состав utf8 и тут конфликта не будет для винды "программа.exe" для студентов нормой становиться. А если учесть, что запуск может быть от балды ярлыком: c:\user\Мои Документы\Зачет\программа.exe, то вообще караул |
|
|
|
|
Алексей1153 |
3.10.2011, 9:59
Сообщение
#6
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2946 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34
|
maint, это всё к делу не относится ИМХО. Запусти да убедись, либо убеди меня
|
|
|
|
|
maint |
3.10.2011, 11:10
Сообщение
#7
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 235 Регистрация: 3.8.2009 Из: Иркутск Пользователь №: 982 Спасибо сказали: 28 раз(а) Репутация: 2
|
Линух, 3апускаю из под mc в однобайтовой кодировке koi8 Линух, 3апускаю из под mc в utf-8 переименовав в тест1 в обоих случаях надо обрубать "./". Во втором определять кодировку Винда (XP). Запускаю из под Far Цитата len: 33 >D:\SRC\untitled\release\test1.exe< Надо обрубать путь, поскольку он не является именем программы |
|
|
|
|
Алексей1153 |
3.10.2011, 11:34
Сообщение
#8
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2946 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34
|
я ничего не понял, где тут битые кодировки и при чём тут путь, который якобы надо обрубать ?
|
|
|
|
|
maint |
3.10.2011, 11:46
Сообщение
#9
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 235 Регистрация: 3.8.2009 Из: Иркутск Пользователь №: 982 Спасибо сказали: 28 раз(а) Репутация: 2
|
Цитата(Алексей1153 @ 3.10.2011, 17:34) Link я ничего не понял, где тут битые кодировки и при чём тут путь, который якобы надо обрубать ? тьфу, зарапортовался, заскок, что надо было длину имени программы вычислить |
|
|
|
|
Iron Bug |
3.10.2011, 11:55
Сообщение
#10
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12
|
я, честно говоря, вообще не понимаю, в чём суть вопроса: чем не устраивают стандартные методы работы со строками? что за проблема определить длину строки (строка заканчивается нулём)?
|
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 22.12.2025, 15:16 |